zoukankan      html  css  js  c++  java
  • 提高scrapy的抓取效率

    1. 增加并发
      1. 默认scrapy开启的并发线程的个数是32个,可以适当的进行增加。在settings中进行设置CONCURRENT_REQUESTS=100
    2. 降低日志级别
      1. 在运行的时候,会有大量的日志信息的输出,为了减少CPU的使用率。可以设置log输出的信息是INFO或者是ERROR就可以了LOG_LEVEL=‘INFO’
    3. 禁止cookie
      1. 如果不是真的需要cookie的话,可以在scrapy爬取的时候禁止cookie从而来减少CPU的使用率,提升爬取的效率,COOKIES_ENABLED=False
    4. 禁止重试
      1. 对失败的HTTP进行重新的请求(重试)会减慢爬取的速度,因此可以禁止重试RETRY_ENABLED=False
    5. 减少下载超时
      1. 如果对一个非常慢的链接进行爬取,减少下载超时可以能让卡住的链接快速的被放弃,从而来提升效率DOWNLOAD_TIMEOUT=10
    USER_AGENT = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36'
    
    # Obey robots.txt rules
    ROBOTSTXT_OBEY = False
    
    # Configure maximum concurrent requests performed by Scrapy (default: 16)
    CONCURRENT_REQUESTS = 100
    COOKIES_ENABLED = False
    LOG_LEVEL = 'ERROR'
    RETRY_ENABLED = False
    DOWNLOAD_TIMEOUT = 3
    # Configure a delay for requests for the same website (default: 0)
    # See https://doc.scrapy.org/en/latest/topics/settings.html#download-delay
    # See also autothrottle settings and docs
    # The download delay setting will honor only one of:
    #CONCURRENT_REQUESTS_PER_DOMAIN = 16
    #CONCURRENT_REQUESTS_PER_IP = 16
    DOWNLOAD_DELAY = 3
  • 相关阅读:
    WDA学习(14):Colors Cell and Input Enable to ALV Column
    JavaScript try-catch语句(错误处理)
    constructor
    input file 重复上传同一张图片失效的解决办法
    input下拉带输入框
    box-shaw四边阴影详解
    苹方字体合集
    两个div不同高度并排显示
    弹窗库
    webstorm破解安装版本
  • 原文地址:https://www.cnblogs.com/tulintao/p/11652964.html
Copyright © 2011-2022 走看看