scrapy和scrapy-redis的区别
scrapy是一个python爬虫框架,爬取的效率极高,具有高度的定制性,但是不支持分布式。而scrapy-redis是一套基于redis库,运行在scrapy框架之上的组件,可以让scapy支持分布式策略 Slaver端共享Master端redis数据库里的item 队列、请求队列和请求指纹集合。 选择redis数据库的原因: redis支持主从同步,而且数据都是缓存在内存中的,所以基于redis的分布式爬虫,对请求和数据的高频率读取效率都非常高 scrapy-redis和scrapy的关系就像电脑和固态硬盘一样,是电脑中的一个插件,能让电脑更快的运行 scrapy是一个爬虫框架,scrapy-redis则是这个框架上可以选择的插件,它可以让爬虫跑得更 解释说明: 从优先级队列中获取requests对象,交给engine engine将requests对此昂交给下载器下载,期间会通过downlomiddleware的process_request方法 下载器完成下载,获得response对象,将该对象交给engine,期间会经过downloadmiddleware的process_response()方法 engine将获得的response对象交给spider进行解析,期间会经过spidermiddleware的process_spider_input(