python3爬蟲常用的庫和插件資源總結

1、由於Requests屬於第三方庫,也就是Python默認不會自帶這個庫,所以需要我們手動安裝


2、Selenium是一個自動化測試工具,利用它我們可以驅動瀏覽器執行特定的動作,如點擊、下拉等操作。對於一些JavaScript渲染的頁面來說,這種抓取方式非常有效

 

3、成功安裝好了Selenium庫,但是它是一個自動化測試工具,需要瀏覽器來配合使用,可以使用Chrome瀏覽器及ChromeDriver驅動,安裝時一定要注意版本的對應,否則會報錯。也可以使用firefox瀏覽器及GeckoDriver驅動。

 

4、PhantomJS是一個無界面的、可腳本編程的WebKit瀏覽器引擎,它原生支持多種Web標準:DOM操作、CSS選擇器、JSON、Canvas以及SVG。

Selenium支持PhantomJS,這樣在運行的時候就不會再彈出一個瀏覽器了。而且PhantomJS的運行效率也很高,還支持各種參數配置,使用非常方便

 

5、aiohttp:Requests庫是一個阻塞式HTTP請求庫,當我們發出一個請求後,程序會一直等待服務器響應,直到得到響應後,程序纔會進行下一步處理。其實,這個過程比較耗費資源。如果程序可以在這個等待過程中做一些其他的事情,如進行請求的調度、響應的處理等,那麼爬取效率一定會大大提高。

aiohttp就是這樣一個提供異步Web服務的庫,從Python 3.5版本開始,Python中加入了async/await關鍵字,使得回調的寫法更加直觀和人性化。aiohttp的異步操作藉助於async/await關鍵字的寫法變得更加簡潔,架構更加清晰。使用異步請求庫進行數據抓取時,會大大提高效率


取網頁代碼之後,下一步就是從網頁中提取信息。提取信息的方式有多種多樣,可以使用正則來提取,但是寫起來相對比較煩瑣。這裏還有許多強大的解析庫,如lxml、Beautiful Soup、pyquery等。此外,還提供了非常強大的解析方法,如XPath解析和CSS選擇器解析等,利用它們,我們可以高效便捷地從網頁中提取有效信息

6、lxml是Python的一個解析庫,支持HTML和XML的解析,支持XPath解析方式,而且解析效率非常高。
Beautiful Soup是Python的一個HTML或XML的解析庫,我們可以用它來方便地從網頁中提取數據。它擁有強大的API和多樣的解析方式。注意,我們雖然安裝的是beautifulsoup4這個包,但是在引入的時候卻是bs4。這是因爲這個包源代碼本身的庫文件夾名稱就是bs4,所以安裝完成之後,這個庫文件夾就被移入到本機Python3的lib庫裏,所以識別到的庫文件名就叫作bs4。
因此,包本身的名稱和我們使用時導入的包的名稱並不一定是一致的。

7、pyquery同樣是一個強大的網頁解析工具,它提供了和jQuery類似的語法來解析HTML文檔,支持CSS選擇器,使用非常方便

8、tesserocr是Python的一個OCR識別庫,但其實是對tesseract做的一層Python API封裝,所以它的核心是tesseract。因此,在安裝tesserocr之前,我們需要先安裝tesseract。安裝tesseract我們使用穩定版本3.0以上的即可

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章