[scrapy]scrapy源码分析–中间件是如何加载的

中间件是scrapy的核心部分,数据的传递,队列的维护,都是靠中间件,所以了解他的生命周期还是很有必要的

 

https://github.com/scrapy/scrapy/blob/master/scrapy/core/spidermw.py

将中间件的每内置的方法加入到方法链上,注意,这里的数值越小,处理越靠前,下同

https://github.com/scrapy/scrapy/blob/master/scrapy/core/scraper.py

这里就去处理spiderMiddleWare

itemproc_cls就是加载item pipeline了

并且处理item 和Request

参考源码:scrapy/scrapy/core/downloader/init.py

然后转向engine 简单理解就是在engine里面的运行时加载donwload(下载中间件)

将scraper也加入了引擎Engine

点赞
  1. GeorgeYao说道:

    1. hi,I'm frank说道:

      哇,好久不见呀,george

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据