我有多个抓取工具,我想对其设置时间限制。
CLOSESPIDER_TIMEOUT
完成工作并返回
finish_reason: closespider_timeout
。
我想拦截它并使用
logging
库来记录 error
。我怎样才能做到这一点?它应该放在中间件中吗?
CLOSESPIDER_TIMEOUT
由 CloseSpider
扩展 处理,它通过调度 Twisted 任务来在时间过去后关闭蜘蛛。我不清楚您是否想保留此行为或覆盖它。
如果您想在不禁用此扩展的情况下覆盖它,您可以将其子类化并将其在
spider_opened()
中安排的代码更改为您想要的代码。
如果您想在添加自己的处理时保留它,您可以执行相同的子类化或仅订阅
spider_closed
信号。