Scrapy基础知识

1.定义
Scrapy是Python开发的一个快速、高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据。Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试。
2.执行流程图
Scrapy基础知识
3.组件简单理解
a).Scrapy Engine(引擎)
Scrapy引擎负责整个框架的数据处理流程,并进行事务的出发,也就是什么时候触发什么事件,由它来进行分配调用。
b).Scheduler(调度器)
调度器负责发送请求给下载器
c).Downloader(下载器)
下载器作用是负责抓取网页信息并把相应返回给蜘蛛(Spiders)。
d).Spiders(蜘蛛)
Spiders接受Resopnse并解析数据,通过Item 发送给Pipline
e).Item Pipeline(项目管道)
实际上分为两部分:Items和PIplines
Items定义数据模型
Piplins从Spiders接受Item数据,对数据进行后期处理:过滤,清洗,入库等操作
f).Downloader middlewares(下载器中间件)
下载器中间件位于下载器和引擎之间的钩子框架,负责Request和Response的特殊处理,比如修改请求头,设置IP等
Scrapy基础知识
g).Spider middlewares(蜘蛛中间件)
蜘蛛中间件是介入到Scrapy中的spider处理机制的钩子框架,可以插入自定义功能来处理发送给 Spiders 的response,以及spider产生的item和request
Scrapy基础知识
4.Scrapy Github源码截图,整个框架的目录结构
Scrapy基础知识