scrapy爬虫流程
了解scrapy爬虫流程,帮助你深刻理解代码逻辑。
![27fc9ec38a1517c095d2fbce007b5ac0.png](https://i-blog.csdnimg.cn/blog_migrate/677833d0900c9ccbbddd852e62621db2.png)
![0a73e67ace98240cabc70ab5e003cfef.png](https://i-blog.csdnimg.cn/blog_migrate/d82d50bbf590430bbd78255bd50eb06b.png)
看图写话:
1、发送请求requests:客户端(你的电脑)从spiders中获得url,携带headers、cookie等信息,向服务器发送请求requests对象,请求获得网页;
2、获得响应response:服务器给客户端返回response,携带网页信息;
3、提取数据、提取url:spider从response中获得网页信息,定位并提取其中的数据;
4、item pipeline,数据管道对数据进行处理、保存。
解释:
- scrapy engine是模块之间沟通的桥梁,能够保证某一部分出错,不会影响其他模块的正常执行,使得爬虫容错率更高。
- middleware中间件,包括downloder middleware spider middleware,可以对request、response做一些额外的处理,比如过滤、修改等。
- middleware不对数据进行处理,不是不行,是不好,又让middleware处理request、response,又要让人家处理数据,太忙了,影响效率。另外,有pipeline专门用于对数据进行处理。