Scrapy框架的基本流程
Scrapy框架的操作流程(14部分)
- Scrapy引擎从Spider获取起始的Request
- Scrapy引擎将获取到的Request发给调度中心排列入队
- Scrapy引擎从调度中心请求获取需要处理的Request
- Scrapy引擎获取到需处理的Request后,将Request发给下载器
- Request在传递给下载器的过程中会经过下载器中间件,对Request进行处理
- 下载器根据Request从Internet从下载内容,封装成Request对象传递给Scrapy引擎
- 下载器将Response传递给Scrapy引擎时,也会经过下载器中间件,对Request进行处理
- Scrapy引擎将接收到的Response传递给Spider进行处理
- Response传递给Spider的过程中,会经过Spider中间件,对Response进行处理。
10.Spider接收Response,处理完之后会生成一个包含需要继续爬取网址的Response和一个Item对象组成的result,将其中的item发送给ITem pipeline进行处理,将其中的Requset发给调度器排列入队列
实例:北京链家二手房信息爬取流程
- 创建项目
- 使用模板来创建爬虫文件
- 创建项目之后,编写items 文件 设置需要抓取的内容
- 编写好items以后,然后编写pipelines,这里主要编写两个方法,一个用来保存数据,另一个用于图片处理。
- 在setting中激活pipeline,设置图片储存信息,MongoDB数据库信息,还有一点要注意,REBOTSTXT——OBEY的属性改为Flase
- 编写爬虫文件,其中的Rule要追踪终每条房屋信息的详情页面
- 运行爬虫,运行完之后再Pycharm中查看爬取到的数据