学科分类
目录
网络爬虫

Scrapy-Redis的运作流程

基于Scrapy-Redis的Scrapy整个运作流程如下:

(1) 引擎(Scrapy Engine)向爬虫(Spiders)请求第一个要爬取的URL。

(2) 引擎从爬虫中获取到第一个要爬取的URL,封装成请求(Request)并交给调度器(Scheduler)。

(3) 调度器访问Redis数据库对请求进行判重,如果不重复,就把这个请求添加到Redis中。

(4) 当调度条件满足时,调度器会从Redis中取出Request,交给引擎,引擎将这个Request通过下载中间件转发给下载器。

(5) 一旦页面下载完毕,下载器(Downloader)生成一个该页面的响应(Response),并将其通过下载中间件发送给引擎。

(6) 引擎从下载器中接收到响应,并通过爬虫中间件(Spider Middlewares)发送给爬虫处理。

(7) Spider处理Response,并返回爬取到的Item及新的Request给引擎。

(8) 引擎将爬取到的Item通过Item Pipeline给Redis数据库,将Request给调度器。

从(2) 开始重复,直到调度器中没有更多的Request为止。

点击此处
隐藏目录