请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

url请求timeout时scrapy core会araise异常?

老师,请看如下错误信息:(异常信息显示不完整,不知为什么,请看下面回答区1楼)
“2019-12-06 20:47:13 [scrapy.core.scraper] ERROR: Error downloading

我的理解是url请求超时的时候,scrapy core不是应当根据RETRY_TIMES的值静默地重试几次就好了吗,怎么会产生一个异常呢? 即使重试次数超限还是没有得到数据也不应该出现如下异常信息呀。因为超时是个大概率发生的事情,怎么能认为是异常呢? 最多打印类似这样的信息我认为就正常:[scrapy.downloadermiddlewares.retry] DEBUG: Gave up retrying <GET https://xxxx.html>
请解答,谢谢!

正在回答 回答被采纳积分+3

1回答

提问者 慕婉清4097246 2019-12-06 21:02:55

老师,请看如下错误信息:

"2019-12-06 20:47:13 [scrapy.core.scraper] ERROR: Error downloading

 <GET xxxxxxx.html>

Traceback (most recent call last):

  File "E:\python-in-action\Envs\guahao_36\lib\site-packages\twisted\internet\defer.py", line 1416, in _inlineCallbacks

    result = result.throwExceptionIntoGenerator(g)

  File "E:\python-in-action\Envs\guahao_36\lib\site-packages\twisted\python\failure.py", line 512, in throwExceptionIntoGenerator

    return g.throw(self.type, self.value, self.tb)

  File "E:\python-in-action\Envs\guahao_36\lib\site-packages\scrapy\core\downloader\middleware.py", line 44, in process_request

    defer.returnValue((yield download_func(request=request, spider=spider)))

  File "E:\python-in-action\Envs\guahao_36\lib\site-packages\twisted\internet\defer.py", line 654, in _runCallbacks

    current.result = callback(current.result, *args, **kw)

  File "E:\python-in-action\Envs\guahao_36\lib\site-packages\scrapy\core\downloader\handlers\http11.py", line 352, in _cb_timeout

    raise TimeoutError("Getting %s took longer than %s seconds." % (url, timeout))"



我的理解是url请求超时的时候,scrapy core不是应当根据RETRY_TIMES的值静默地重试几次就好了吗,怎么会产生一个异常呢? 即使重试次数超限还是没有得到数据也不应该出现如下异常信息呀。因为超时是个大概率发生的事情,怎么能认为是异常呢? 最多打印类似这样的信息我认为就正常:[scrapy.downloadermiddlewares.retry] DEBUG: Gave up retrying <GET https://xxxx.html>

请解答,谢谢!


0 回复 有任何疑惑可以回复我~
  • bobby #1
    是的,会根据设置的重试次数重试的,但是你这里说到的超时是大概率时间这话不对,对于一个网站来说,能正常响应是一个网站的基本需求,所以理论上来讲第一次如果没有请求到,后续请求到的几率会小很多,有可能是对方网站反爬了 也有可能是当前自己的网络问题,也有可能是对方的服务器响应不过来,不论是这几种情况哪种都是很严重的问题,所以网页下载不到抛出异常是很重要的,如果某个url又下载不到又不抛出异常那才是莫名其妙的,你后续想排查问题都难
    回复 有任何疑惑可以回复我~ 2019-12-09 11:39:08
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号