笨鸟编程-零基础入门Pyhton教程

 找回密码
 立即注册

蜘蛛中间件

发布者: 笨鸟自学网

Spider中间件是一个钩子框架,可以钩住Scrapy的Spider处理机制,在该机制中,您可以插入自定义功能来处理发送到的响应。 蜘蛛 用于处理和处理由spider生成的请求和项目。

激活蜘蛛中间件

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

举个例子:

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

这个 SPIDER_MIDDLEWARES 设置与合并 SPIDER_MIDDLEWARES_BASE 在scrappy中定义的设置(不打算被重写),然后按顺序排序,以获得已启用中间件的最终排序列表:第一个中间件更接近引擎,最后一个更接近spider。也就是说, 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,
}

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


上一篇:下载器中间件下一篇:扩展

Archiver|手机版|笨鸟自学网 ( 粤ICP备20019910号 )

GMT+8, 2024-11-21 17:50 , Processed in 0.037277 second(s), 17 queries .

© 2001-2020

返回顶部