爬蟲-相關庫整理

請求庫

實現(xiàn)http請求操作

  • requests
    阻塞式http請求庫,發(fā)出一個請求,一直等待服務器響應后,程序才能進行下一步處理
  • selenium
    自動化測試工具,可以利用它驅動瀏覽器執(zhí)行特地的動作,如點擊,下拉,特別對于一些js渲染的頁面,這種抓取十分有效,有三種瀏覽器的對接方式。

    • ChromeDriver(Chrome)
      GeckoDriver(火狐)
      瀏覽器驅動插件,驅動瀏覽器執(zhí)行相應的操作。不同瀏覽器需要下載不同的插件,需要配置相關的環(huán)境變量。

    • phantomJS
      一個無頭(Headless,無界面,使用腳本進行操作)瀏覽器,可以進行模擬登錄等操作,以便爬取需要的網站。

    • aiohttp
      提供異步的web服務的庫,其的異步操作借助于async/await關鍵字,使用異步庫進行數據抓取,可在等待期間做其他事,提高爬蟲效率

解析庫

從網頁中提取信息,正則表達式寫起來比較繁瑣,所以產生了許多強大的解析庫

  • lxml
    支持html和XML的解析,支持Xpath解析方式(bs和scrapy框架都需要此庫)。

  • pyquery
    提供類似jquery的語法來解析html文檔,支持css選擇器。

  • html5lib
    是一個Ruby和Python用來解析HTML文檔的類庫,支持HTML5以及最大程度兼容桌面瀏覽器。

  • Beautiful Soup
    html和XML的解析,從網頁中提取信息,同時擁有強大的API和多樣解析方式。支持Python標準庫中的HTML解析器,還支持一些第三方的解析器。

幾種解析器的優(yōu)劣比較
  • tesserocr
    Python的一個OCR(optical character recognition,光學字符識別)識別庫 ,本質是對tesseract做的一層API封裝,需要先安裝 tesseract 。
    可將圖形驗證碼通過其形翻譯成電子文本。
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容