Scrapy框架架构

Scrapy框架介绍
写一个爬虫,需更做很多的事情。比如:发送网络请求、数据解折、数据存储、反反爬虫机制(更换IP'代理、设置请求头等)、异步请求等。这些工作如果每次都要自己从零开始写的话,比较浪费时间。因此scrapy把一些基础的东西封装好了,在他上面写虫可以变的更加的高效(爬取效率和开发效率)。因此真正在公司里,一些上了量的配虫,都是使用scrap架来解决。

Scrapy框架架构

Scrapy框架架构

 

Scrap框架模块功能
1.scrapy Engine(引擎):scrap桓架的核心部分。员在 spider和 Itempipel、 Downloader、 scheduler中间通信,
传递数据等
2.spider(爬虫):发送需要爬取的连接给给引,最后引擎其他模块请求回来的数据再发送给爬虫,爬虫就去解析想要的数据。
这个部分是我们开发者自己写的,因カ要吧取哪些接,页面中的哪些数据是我们需要的,都是由程序员自己决定。
3.scheduler(调度器):负责接收引发送过来的请求,并照一定的方式进行列和整理,负责调度请求的顺序等。
4. Downloader(下载器):负责接收引传过来的下请求,然后去网络上下载对应的数据再交给引擎。
5.Item Pipe1ine(管):负贵将spider(爬虫)传递过来的数据进行保存。具体保存在哪里,应该看开发者自己的需求,
6. Downloader Middlewares(下载中间件):可以扩展下载器和引之间通信功能的中间件。
7.Spider Middlewares( Spider中间件):可以扩展引和虫之间通信功能的中间件。

Scrapy框架架构

Scrapy框架架构

Scrapy框架架构