目录
1、简介
Scrapy是一个Python的爬虫框架,它使用Twisted作为异步处理网络请求;它可以将非结构化的数据或者半结构化的数据转化为结构化数据。包含了各种中间件去各司其职的去完成一个任务。
2、安装
pip install scrapy
3、Scrapy架构图
名词解释
-
SPIDERS:爬虫代码(爬虫的代码逻辑都在这里边写)
-
ENGINE:爬虫引擎(相当于电脑的CPU 分发任务)
-
SCHEDULER:调度器(调度网址)
-
DOWNLOADER:下载器(下载HTML)
-
ITEM PIPELINES:存储管道(存储数据)
Scrapy工作流程:
- Spiders发起一个请求(可能是网址,可能是数据)
- Engine收到请求后判断如果是网址发给调度器,如果是数据,则给Item Pipelines
- 调度器收到网址后,将网址放到队列再次将队列里的地址发给调度器(调度器其实就是一个队列,因为一次请求的地址可能不是一个,所以要一个一个的再重新分发给引擎)
- Engine收到调度器的网址后,将请求网址发给DownLoader
- DownLoader下载完毕后将response数据返回给Engine
- Engine将下载完的数据发给Spiders
- Spiders将处理完的数据交给Engine
- Engine将数据给Item Pipelines存储(其实第二步已经提到过这个步骤,如果Spiders给的是数据就自动给存储器了)。