Windows 10家庭中文版,Python 3.6.4,Scrapy 1.5.0,html
提示:此文存在问题,真正测试, 请勿阅读,shell
07-14 14:26更新:cookie
通过两个多小时的测试,发现此问题的缘由是 昨天编写爬虫程序后,给爬虫程序添加了下面的属性:网络
download_timeout = 20dom
此属性的解释:scrapy
The amount of time (in secs) that the downloader will wait before timing out.函数
在获取某网站的子域名的robots.txt文件时,须要的时间远远超过20秒,所以,即使有三次重试的机会,也会最终失败。测试
此值默认为180,由于某网站是国内网站,所以,孤觉得它的文件所有都会下载的很快,不须要180这么大,因而更改成20,谁知道,其下子域名的robots.txt却须要这么久:网站
测试期间更改成30时,情况好了,目前已取消设置此值,已能抓取到须要的数据。spa
但是,为何robots.txt会下载这么慢呢?
删除Request中定义的errback进行测试,也能够获取到须要的数据。
那么,在Request中定义errback有什么用呢?
如今,再次在项目内、项目外执行下面的命令都不会发生DNSLookupError了(测试过)(但是,上午怎么就发生了呢ÿ