Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/scrapy/core/downloader/middleware.py", line 42, in process_request
defer.returnValue((yield download_func(request=request, spider=spider)))
twisted.web._newclient.ResponseNeverReceived: [<twisted.python.failure.Failure twisted.internet.error.ConnectionDone: Connection was closed cleanly.>]
这个问题的原因是没有正确设置header头信息,主要指user-agent信息。只要正常设置header头信息就可以运行成功。
DEFAULT_REQUEST_HEADERS = {
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Accept-Language': 'en',
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like Gecko)"
}
打开项目settings.py文件,开启DEFAULT_REQUEST_HEADERS。
注意:
1."User-Agent"这项信息是默认没有的,需要手动添加的。可以通过查看浏览器的请求信息获user-agent。
2.DEFAULT_REQUEST_HEADERS中的配置选项,首字母都是大写的,跟一般的小写不一样。