每日分享:
镜子很脏的时候我们并不会误认为是我们的脸脏,那为什么别人随口说出糟糕的话时,我们要觉得糟糕的是我们自己呢?
融入人群,可以啊,但人群有什么好融入的
所谓的听懂不一定是懂对方对你讲什么,而是懂对方为什么要对你讲
目标:
- 了解scrapy的概念
- 了解scrapy框架的作用
- 掌握scrapy框架的运行流程
- 掌握scrapy中每个模块的作用
一、scrapy的概念
scrapy是一个python编写的开源网络爬虫框架,它是一个被设计用于爬取网络数据、提取结构性数据的框架。
scrapy使用了Twisted['twistid]异步网络框架,可以加快我们的下载速度
scrapy文档地址:初窥Scrapy — Scrapy 1.0.5 文档
二、scrapy框架的作用
少量的代码就能快速的抓取
三、scrapy的工作流程
3.1 回顾之前的爬虫流程
3.2 上面的流程可以改为
3.3 scrapy的流程
流程:
-
爬虫中起始的url构造成request对象–>爬虫中间件–>引擎–>调度器
-
调度器把request–>引擎–>下载中间件—>下载器
-
下载器发送请求,获取response响应—->下载中间件—->引擎—>爬虫中间件—>爬虫
-
爬虫提取url地址,组装成request对象—->爬虫中间件—>引擎—>调度器,重复步骤2
-
爬虫提取数据—>引擎—>管道处理和保存数据
注意:
- 绿色线条表示数据的传递
- 中间件的位置决定了其作用
- 所有模块之间相互独立,只和引擎进行交互
3.4 scrapy中的三个内置对象
- request请求对象:由url method post_data headers等构成
- response响应对象:由url body status headers等构成
- item数据对象:本质是个字典
3.5 scrapy中每个模块的具体作用
爬虫中间件和下载中间件只是运行逻辑位置不同,作用是重复的:如替换UA等等
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试