如何提升scrapy框架的爬取效率?
阿新 • • 發佈:2021-08-30
可以採取以下措施:
-
增大併發請求數
- 預設scrapy開啟的併發執行緒為16個,可以適當進行增加。在settings配置檔案中修改CONCURRENT_REQUESTS = 100值為100,併發設定成了為100。
-
提升日誌等級
- 在執行scrapy時,預設日誌等級為DEBUG,會有大量日誌資訊的輸出,為了減少CPU的使用率。可以設定log輸出資訊為INFO、WARNING或者ERROR即可。在配置檔案中編寫:LOG_LEVEL = 'INFO'
-
禁用Cookies
- 除非必須攜帶cookie,則在scrapy爬取資料時可以禁止cookie從而減少CPU的使用率,提升爬取效率。在配置檔案中編寫:COOKIES_ENABLED = False
- 除非必須攜帶cookie,則在scrapy爬取資料時可以禁止cookie從而減少CPU的使用率,提升爬取效率。在配置檔案中編寫:COOKIES_ENABLED = False
-
禁止重試
- 對失敗的request進行重新請求會降低爬取速度,因此可以禁止重試。在配置檔案中編寫:RETRY_ENABLED = False
-
減少下載超時
- 如果對一個非常慢的連結進行爬取,減少下載超時可以讓卡住的連結快速被丟棄,從而提升效率。在配置檔案中進行編寫:DOWNLOAD_TIMEOUT = 10 超時時間為10s