A. python的應用前景。
目前python被用的還是蠻多的,一些大公司如Google(實現web爬蟲和搜索引擎中的很多組件),Yahoo(管理討論組),NASA,YouTube(視頻分享服務大部分由Python編寫)等等對Python都很青睞。而國內的豆瓣可以說是給Python予千萬寵愛了,它的前台後台清一色的都是Python的身影。另外,我們計算機視覺這塊用的很頻繁的OpenCV也提供了Python的介面,網上還提供了不少Python的機器學習的庫(例如milk,scikit-learn,Pylearn2等),Deep learning的一個知名的Python的庫theano,自然語言處理的庫NLTK。此外,Python為數學、科學、工程和繪圖等提供了有趣的標准庫(例如,NumPy ,SciPy和matplotlib等),Python佔有的用戶群越來越廣。
通過網路大概了解了下python的應用領域,如:系統運維、科學計算、人工智慧、網路編程(如搜索引擎、爬蟲、伺服器編程)、web開發、雲計算系統、圖形化、教育等等等…………好吧,一堆看不懂的,只注意到了「爬蟲」、「科學計算」和「圖形化」三個關鍵詞,簡單理解就是爬數據、分析挖掘和圖形展示。
Python的應用
在數據爬蟲方面,利用rullib、requests、BeautifulSoup、re、Scrapy等模塊進行爬取想要的網站資料,如搜房、淘寶、京東、微信、今日頭條、中國知網、新浪、貼吧、金融界、電影論壇等等,真正的實現所見即所得。
在數據處理方面,利用Pandas、Numpy、Scipy、PyMVPA等模塊可以幫助你在計算巨型數組、矢量分析、神經網路等方面高效率完成工作。尤其是在教育科研方面,可以發揮出獨特的優勢。
在數據展示方面,利用ReportLab 、matplotlib、basemap 等模塊可以生成相應的統計圖表或地圖等。另外,利用PyOpenGl模塊,可以非常迅速的編寫出三維場景。
總之是集數據採集、分析、挖掘及展示等功能於一體,典型的萬金油。另外,如果是專業學習python,真是工資高得讓人羨慕,具體多少就不說了,感興趣的可以去查查。
B. 使用python爬蟲抓取知網論文標題,作者,發布時間等相關信息
確定抓取方法
首先判斷是使用requests還是selenium進行抓取,需根據網頁類型選擇。在知網搜索內容後,發現鏈接地址未變,右鍵檢查網路情況,發現頁面更新後,鏈接詳情頁內容不變,只有框架,沒有所需數據。判斷需要通過POST請求獲取數據。
尋找數據API介面
點擊fetch/xhr找到數據詳情頁,發現數據確實為POST請求,於是嘗試使用requests模塊進行抓取。POST請求需要使用form_data表單數據,數據在payload中。
代碼嘗試
使用requests後發現抓取失敗,轉而嘗試使用selenium。
使用selenium進行代碼編寫與執行
使用selenium後成功獲取數據。在使用selenium時,需注意可能出現的網路速度跟不上代碼執行速度的問題,可能導致下一頁數據未載入完成即開始爬取,引發錯誤。為避免此類問題,可在點擊下一頁後添加time.sleep(2)等待兩秒,確保數據載入完成,成功爬取。