前言
写一写Spider中间件吧,都凌晨了,一点都不想写,主要是也没啥用…哦不,是平时用得少。因为工作上的事情,已经拖更好久了,这次就趁着半夜写一篇。
Scrapy-deltafetch插件是在Spider中间件实现的去重逻辑,开发过程中个人用的还是比较少一些的。
作用

依旧是那张熟悉的架构图,不出意外,这张图是最后一次出现在Scrapy系列文章中了。
如架构图所示,Spider中间件位于Spiders(程序)和engine之间,在Item即将拥抱Pipeline之前,对Item和Response进行处理。官方定义如下:
Spider中间件是介入Scrapy的spider处理机制的钩子框架,可以添加代码来处理发送给 Spiders 的response及spider产生的item和request。
Spider中间件
当我们启动爬虫程序的时候,Scrapy自动帮我们激活启用一些内置的Spider中间件。

如图所示,这里帮我们启用了五个Spider中间件,这里我们依次分析一波。
内置Spider中间件
之前在下载器中间件也说了:大部分内置中间件是和settings中的配置配套使用的。Spider中间件也不例外。这里就想将

本文介绍了Scrapy的Spider中间件,包括其作用、内置中间件的分析以及自定义中间件的创建方法。重点讨论了HttpErrorMiddleware和OffsiteMiddleware等功能,并解释了Spider中间件与下载器中间件的区别。虽然自定义中间件在实际工作中较少使用,但理解其工作原理对优化爬虫性能至关重要。
最低0.47元/天 解锁文章
2万+





