一、Scrapy爬虫框架介绍
-
Scrapy不是一个函数功能库,而是一个爬虫框架。
-
爬虫框架是实现爬虫功能的一个软件结构和功能组件集合。
-
爬虫框架是一个半成品,能够帮助用户实现专业网络爬虫
二、Scrapy框架结构(5+2结构)
三、框架的数据流路径(三条)
第一条路径:
1.Engine从Spider处获得爬取请求(Request) (框架入口)
2.Engine将爬取请求转发给Scheduler,用于调度
第二条路径:
- Engine从Scheduler处获得下一个要爬取的请求
- Engine将爬取请求通过中间件发送给Downloader
- 爬取网页后,Downloader形成响应(Response) 通过中间件发给Engine
- Engine将收到的响应通过中间件发送给Spider处理
第三条路径:
- Spider处理响应后产生爬取项(scraped Item) 和新的爬取请求(Requests)给Engine
- Engine将爬取项发送给Item Pipeline(框架出口)
- Engine将爬取请求发送给Scheduler
四、需要用户编写的三个结构
1.Spider
2.Item Pipelines
3.Downloader 和Middleware (可配置,也可不配置)