扫码一下
查看教程更方便
不规则事件称为异常。 在 Scrapy 中,由于缺少配置、从项目管道中删除项目等原因会引发异常。以下是 Scrapy 中提到的异常及其应用的列表。
Item Pipeline 利用此异常在任何阶段停止处理项目。 它可以写成
exception (scrapy.exceptions.DropItem)
此异常用于使用回调请求停止爬虫。 它可以写成
exception (scrapy.exceptions.CloseSpider)(reason = 'cancelled')
它包含名为 reason(str)
的参数,该参数指定关闭的原因。
例如,以下代码显示了这种异常用法
def parse_page(self, response):
if 'Bandwidth exceeded' in response.body:
raise CloseSpider('bandwidth_exceeded')
调度程序或下载程序中间件使用此异常来忽略请求。 它可以写成
exception (scrapy.exceptions.IgnoreRequest)
它表示缺少配置情况,应该在组件构造函数中引发。
exception (scrapy.exceptions.NotConfigured)
如果禁用以下任何组件,则可以引发此异常。
当不支持任何功能或方法时会引发此异常。 它可以写成
exception (scrapy.exceptions.NotSupported)