Scrapy核心组件解析

时间:2019-04-16
本文章向大家介绍Scrapy核心组件解析,主要包括Scrapy核心组件解析使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

如图,分别是引擎(Engine),管道(Pipeline),调度器(Scheduler),下载器(Downloader),爬虫文件(Spider)以及一些中间件(Middleware)。

引擎是整个框架的核心,整个爬取的流程就是引擎来管理。调度器用来接收引擎发过来的requests,并在引擎再次请求的时候返回。调度器用来决定抓取的URL。下载器用来下载内容然后返回给爬虫,它是建立在twisted这个高效的异步模型上的。爬虫主要是一些逻辑代码,用于提取出我们需要的信息,也就是所谓的实体Item管道负责处理实体内容,一般的功能有持久化存储,验证有效性,清楚无关信息等。

一次简单的大致scrapy爬起流程如下:

首先引擎将爬虫文件的url获取,提交给调度器。下载数据后,调度器通过引擎来将response交给下载器。下载好的数据会通过引擎交给爬虫文件,然后解析数据。最后爬虫文件将解析好的数据交给管道来进行处理。