Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何为剪贴请求添加默认errback_Python_Scrapy - Fatal编程技术网

Python 如何为剪贴请求添加默认errback

Python 如何为剪贴请求添加默认errback,python,scrapy,Python,Scrapy,我有一群蜘蛛是从我的基础蜘蛛那里继承来的。我想要的是在请求失败的情况下调用的errback。我不想改变我的蜘蛛,除了基础蜘蛛 我在这些spider中经常遇到的是ResponseNeverReceivedexception,这就是从不调用回调且不会触发后续请求的原因 我希望所有请求都有一个默认的errback,以便在出现任何异常的情况下,如twisted.web.\u newclient.ResponseNeverReceived或twisted.web.\u newclient.Response

我有一群蜘蛛是从我的基础蜘蛛那里继承来的。我想要的是在请求失败的情况下调用的errback。我不想改变我的蜘蛛,除了基础蜘蛛

我在这些spider中经常遇到的是
ResponseNeverReceived
exception,这就是从不调用回调且不会触发后续请求的原因


我希望所有请求都有一个默认的errback,以便在出现任何异常的情况下,如
twisted.web.\u newclient.ResponseNeverReceived
twisted.web.\u newclient.ResponseFailed
我可以触发一个不同的请求。

我使用为基础spider启用的自定义中间件实现了它

我在中间件中使用的代码段:

if hasattr(spider, 'default_errback') and request.errback is None:
    request.errback = spider.default_errback