激活蜘蛛中间件

要激活蜘蛛中间件组件,请将其添加到 SPIDER_MIDDLEWARES设置,该设置是一个dict,其键是中间件类路径,它们的值是中间件命令。

这是一个例子:

SPIDER_MIDDLEWARES = {
    'myproject.middlewares.CustomSpiderMiddleware': 543,
}

SPIDER_MIDDLEWARES设置与SPIDER_MIDDLEWARES_BASEScrapy中定义的设置合并 (并不意味着被覆盖),然后按顺序排序,以获得已启用的中间件的最终排序列表:第一个中间件是靠近引擎的中间件,最后一个是更接近引擎的中间件对蜘蛛。换句话说,process_spider_input() 将以增加的中间件顺序(100,200,300,…)process_spider_output()调用每个中间件的方法,并且将按递减顺序调用每个中间件的 方法。

要确定分配给中间件的顺序,请参阅 SPIDER_MIDDLEWARES_BASE设置并根据要插入中间件的位置选择值。订单很重要,因为每个中间件执行不同的操作,您的中间件可能依赖于应用的某些先前(或后续)中间件。

如果要禁用内置中间件(SPIDER_MIDDLEWARES_BASE默认情况下定义的中间件 ),则必须在项目SPIDER_MIDDLEWARES设置中定义它并将None指定为其值。例如,如果要禁用异地中间件:

SPIDER_MIDDLEWARES = {
    'myproject.middlewares.CustomSpiderMiddleware': 543,
    'scrapy.spidermiddlewares.offsite.OffsiteMiddleware': None,
}

最后,请记住,可能需要通过特定设置启用某些中间件。有关详细信息,请参阅每个中间件文档。

评论被关闭。