scrapy 架构图

 

 

scrapy架构个人解读

 

从上图中可以看到scrapy的数据流向
1.从书写的spiders开始会抛出 (yield) requests 到scrapy引擎(engine)中
2.engine 没有对request 做任何处理,直接将 requests 交给 scheduler
3.由scheduler生成requests 重新交给engine
4.engine将从scheduler 中得到的requests 交给downloader处理,中间会经过downloader和engine之间的middleware进行过滤
5.downloader的下载结果会返回给engine,返回结果途中会经过downloader和engine之间的middleware过滤
6.engine将downloader的下载结果(httpResponse)交给spider进行处理解析,httpResponse会有middleware的过滤
7.spider将解析的结果(item 或 requests)交给engine处理,解析结果会有middleware的过滤
8.engine判断从spider得到的解析结果是item还是request,item交给itempipline进行处理,request交给scheduler处理

9.scheduler将得到的request进行 3 的操作 开始循环执行整个过程

备注:所有的数据都会经过engine,engine将得到的response交给spider,item交割itempipline,request交给scheduler,再从scheduler中获得request

相关文章:

  • 2021-11-23
  • 2021-09-16
  • 2021-07-24
  • 2022-12-23
  • 2021-06-16
  • 2022-02-09
猜你喜欢
  • 2021-10-31
  • 2022-12-23
  • 2021-10-09
  • 2021-12-05
  • 2022-01-12
  • 2021-04-17
  • 2021-06-28
相关资源
相似解决方案