Settings 参数记录

Posted liyongbin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Settings 参数记录相关的知识,希望对你有一定的参考价值。

DOWNLOAD_FAIL_ON_DATALOSS :

  参数:TRUE、FALSE

  如果设置为 True :

    scrapy.Request 有一个 errback 参数, 当 Request 请求出错的时候,会自动调用这个回调函数:

      如果处理请求时引发异常,则调用该函数。这包括404个HTTP错误和失败的页面。它接收一个扭曲的故障实例作为第一个参数。有关更多信息,请参见使用回退捕获以下请求处理中的异常。

  如果设置为 False:
    scrapy 会自动添加一个名为 dataloss 的 flag 到 response.flags, 用下面代码判断是否发生错误:

if dataloss in response.flags: 

ROBOTSTXT_OBEY :

  参数:TRUE、FALSE

  默认为True,就是要遵守robots.txt 的规则,那么 robots.txt 是个什么东西呢?

  通俗来说, robots.txt 是遵循 Robot协议 的一个文件,它保存在网站的服务器中,它的作用是,告诉搜索引擎爬虫,本网站哪些目录下的网页 不希望 你进行爬取收录。在Scrapy启动后,会在第一时间访问网站的 robots.txt 文件,然后决定该网站的爬取范围。

  当然,我们并不是在做搜索引擎,而且在某些情况下我们想要获取的内容恰恰是被 robots.txt 所禁止访问的。所以,某些时候,我们就要将此配置项设置为 False ,拒绝遵守 Robot协议

FEED_EXPORT_ENCODING :

  参数:编码、文件格式

  设置导出文件格式

CONCURRENT_REQUESTS :

  参数:并发数

  Scrapy默认的全局并发限制对同时爬取大量网站的情况并不适用,因此您需要增加这个值。 增加多少取决于您的爬虫能占用多少CPU。 一般开始可以设置为 100 。不过最好的方式是做一些测试,获得Scrapy进程占取CPU与并发数的关系。 为了优化性能,您应该选择一个能使CPU占用率在80%-90%的并发数
setting.py文件中写上CONCURRENT_REQUESTS = 100,scrapy中默认的并发数是32

DOWNLOAD_DELAY:

  参数:时间单位秒

  从同一网站获取请求时等待时间

CONCURRENT_REQUESTS_PER_IP :

  参数:并发数

  对单个IP进行并发请求的最大值

AUTOTHROTTLE_ENABLED :

  参数:TRUE、FALSE

  启用 AutoThrottle 扩展 :

    根据 Scrapy 服务器及您爬取的网站的负载自动限制爬取速度,自动调整 scrapy 来优化下载速度,使得用户不用调节下载延迟及并发请求数来找到优化的值。 用户只需指定允许的最大并发请求数,剩下的都交给扩展来完成

AUTOTHROTTLE_START_DELAY :

  参数:数字

  初始下载延迟(单位:秒)

AUTOTHROTTLE_MAX_DELAY :

  参数:数字

  在高延迟情况下最大的下载延迟(单位秒)

AUTOTHROTTLE_DEBUG :

  参数:数字

  起用 AutoThrottle 调试(debug)模式,展示每个接收到的 response。您可以通过此来查看限速参数是如何实时被调整的

 





以上是关于Settings 参数记录的主要内容,如果未能解决你的问题,请参考以下文章

详解Android WebView加载html片段

pycharm添加Odoo代码片段

pycharm自定义代码模板

CSP核心代码片段记录

scrapy之settings参数

记录C#常用的代码片段