Scrapy框架及工作流程

注:为本人学习笔记,有砖忘轻拍。内容来自慕课网-大壮老师

1.Scrapy框架

Scrapy框架及工作流程_第1张图片

Scrapy Engine:负责四大组件之间的通信、信号及数据传递;

Scheduler:接收Engine发送过来的Requests请求url入队;

Downloader:发送请求并下载数据(负责发送Engine发送的Requests请求,并将获得的Response返还给Engine,再由Engine交还给Spider进行解析);

Spider:负责处理所有的Response。如果Response中含有如‘下一页’请求,返还给Engine并由其交给Scheduler进行入队操作;

Pipeline:封装去重类、存储类,负责处理Spider中获取的数据存储与过滤;

2.Scrapy工作流程

1).在spider中的入口定义一个URL;

2).Engine主动通信Spider,Spider回馈目标地址,然后将URL交给Engine;

3).Engine将URL交给Scheduler排序入队;

4).Scheduler将排好队的Requests请求交给Engine;

5).Engine将Requests请求交给Downloader进行下载,下载失败的Requests将会重新进入Scheduler;下载成功的会返回Response给Engine,Engine将Response文件交给Spider

6).Spider进行数据解析,分析数据内容:将期望数据交给Pipeline进行存储或清洗;将另外一部分请求交给Engine,再进入Scheduler重复以上操作,直至获取到全部数据。

3.Scrapy工程四部曲

1).新建项目

cmd》scrapy startproject {projectname}

创建爬虫文件

cmd》scrapy genspider xxx_spider 域名

2).明确目标

在items文件中定义抓取目标

3).制作爬虫

4)存储数据

你可能感兴趣的:(Python,Scrapy)