zoukankan      html  css  js  c++  java
  • scrapy请求传参,提高爬取效率,fake-useragent

    scrapy请求传参

    """
    # 1 传参 :yield Request(url,callback=self.parser_detail,meta={'item':item})
    # 2 取参:response.meta.get('item')
    """
    

    提高爬取效率的方式

    """
    - 在配置文件中进行相关的配置即可:(默认还有一套setting)
    #1 增加并发:
    默认scrapy开启的并发线程为32个,可以适当进行增加。在settings配置文件中修改CONCURRENT_REQUESTS = 100值为100,并发设置成了为100。
    
    #2 提高日志级别:
    在运行scrapy时,会有大量日志信息的输出,为了减少CPU的使用率。可以设置log输出信息为INFO或者ERROR即可。在配置文件中编写:LOG_LEVEL = ‘INFO’
    
    # 3 禁止cookie:
    如果不是真的需要cookie,则在scrapy爬取数据时可以禁止cookie从而减少CPU的使用率,提升爬取效率。在配置文件中编写:COOKIES_ENABLED = False
    
    # 4禁止重试:
    对失败的HTTP进行重新请求(重试)会减慢爬取速度,因此可以禁止重试。在配置文件中编写:RETRY_ENABLED = False
    
    # 5 减少下载超时:
    如果对一个非常慢的链接进行爬取,减少下载超时可以能让卡住的链接快速被放弃,从而提升效率。在配置文件中进行编写:DOWNLOAD_TIMEOUT = 10 超时时间为10s
    """
    

    fake-useragent

    """
    # 请求头中的user-agent
    list=['','']
    
    # pip3 install fake-useragent
    
    # https://github.com/hellysmile/fake-useragent
    from fake_useragent import UserAgent
    ua=UserAgent(verify_ssl=False)
    print(ua.random)
    """
    
  • 相关阅读:
    典型用户
    站立会议5
    站立会议4
    《构建之法》阅读笔记05-需求分析
    站立会议3
    编写Android程序Eclipse连不上手机。
    站立会议2
    站立会议1
    第七周学习进度
    shiro之 散列算法(加密算法)
  • 原文地址:https://www.cnblogs.com/yafeng666/p/12687954.html
Copyright © 2011-2022 走看看