如何提升scrapy框架的爬取效率?

可以采取以下措施:

  • 增大并发请求数

    • 默认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
  • 禁用重试

    • 对失败的HTTP进行重新请求会降低爬取速度,因此可以禁止重试。在配置文件中编写:RETRY_ENABLED = False
  • 减少下载超时时间

    • 减少下载超时可以让卡住(下载速度很慢)的链接快速被丢弃,从而提升效率。在配置文件中编写:DOWNLOAD_TIMEOUT = 10 超时时间为10s
posted @ 2021-08-30 16:27  eliwang  阅读(282)  评论(0编辑  收藏  举报