Scrapy是一个适用抓取网站数据、提取结构性数据的应用程序框架,它可以应用在广泛的领域,Scrapy常应用在包括数据挖掘、信息处理和存储历史数据等一系列的程序中,通常我们可以很简单的通过Scrapy框架实现一个爬虫,抓取指定网站的内容或图片。
Scrapy的架构有哪些?
Scrapy Engine:负责Spider、itemPipeline、Downloader、Scheduler中间的通讯,信息、数据传递等;
Scheduler:负责接受引擎发送过来的Request请求,并按照一定的方式进行整理排序,入队,当引擎需要时,交还给引擎;
Downloader:负责下载Scrapy Engine发送的所有Requests请求,并将其获取到的Responses交还给Scrapy Engine,由引擎交给Spider来处理;
Spider:负责处理Responses,从中分析提取数据,获取Item字段需要的数据,并将需要跟进的URL提交给引擎,再次进入Scheduler;
Item Pipeline:负责处理Spider中获取的item,并进行后期处理的地方;
Downloader Middlewares:一个可以自定义扩展下载功能的组件;
Spider Middlewares:一个可以自定扩展和操作引擎和Spider中间通信的功能组件。
原文:https://blog.51cto.com/15052541/2643378