我正在阅读之前蜘蛛发射的日志。我很想知道这个例外的位置以及我如何采取行动:
2019-04-12 22:00:55 [scrapy.core.scraper] ERROR: Spider error processing <GET https://www.website.com/next_page> (referer: https://www.website.com/prev_page)
Traceback (most recent call last):...
我在项目中查看了文件middlewares.py
,settings.py
等等,我找不到任何用logging.error
或spider.logger.error
编写的行。即使在内置方法def process_spider_exception(self, response, exception, spider):
或def process_exception(self, request, exception, spider):
中,我也找不到任何命令日志消息的行。对我来说,查看文档并不能澄清它。
现在即将采取行动。如果我想知道它的来源,是因为我想尝试插入一些命令将URL添加到专用于某种异常的文件中,这些异常导致蜘蛛错误处理以分析它,纠正它,并从这个文件中的这些特定网址再次启动蜘蛛,因为这比scrapy日志文件更舒服。
除了采取行动之外,我想知道它在哪里以及如何运作。
要回答你的问题,那个日志消息来自scrapy包中的handle_spider_error方法
关于查找错误源,提示通常是此错误日志附带的回溯。
您还可以关注调用此网址'https://www.website.com/next_page'的代码