Scrapy架构概述,了解一下

这里写图片描述

官方文档给出的图片


组件

middleware 中间件

spiders 爬虫,爬取网页,自定义解析爬取的数据
engine 引擎,也就是框架核心处理的部分
scheduler 调度器,调度发起的请求的,框架采用的是异步请求
downloader 下载 ,
item pipelines 管道,用来处理解析数据,进行存储数据等操作


流程

1、spiders向engine发出request
2、engine将request放入scheduler中,有个表的图标,应该想说明的是请求是异步的把
3、scheduler取出request交给engine
4、engine发送通过中间件把request发给downloader,
5、downloader会生成一个Response(带有该页面)并将其通过中间件(请参阅 参考资料process_response())发送到Engine,
6、engine 把通过 downloader 中间件接收来自downloader 的 response
通过爬虫中间件(见process_spider_input())并将其发送给爬虫处理,
7、spiders 通过中间件(见 process_spider_output()),
把处理响应后的item 或 request 发送给engine,
8、engine把要处理的item发送给 itempipelines,
把可能爬取的请求的交给scheduler,

该过程重复(从步骤1开始),直到调度程序不再有请求为止 。


Event-driven networking
Scrapy is written with Twisted, a popular event-driven networking framework for Python. Thus, it’s implemented using a non-blocking (aka asynchronous) code for concurrency.
框架采用Twisted异步请求,抽空了解下
官网
https://doc.scrapy.org/en/latest/topics/architecture.html
高人总结
https://www.cnblogs.com/kongzhagen/p/6549053.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值