更多python、Linux、网络安全学习内容,可移步:www.oldboyedu.com或关注\"老男孩Linux\"公众号
分类: Python/Ruby
2021-08-18 16:33:10
Scrapy和Scrapy-redis有什么区别?简单的来讲,Scrapy是一个通用的爬虫框架,但不支持分布式;而Scrapy-redis就是为了方便实现Scrapy框架的分布式抓取。具体内容跟着小编往下看。
scrapy和scrapy-redis有什么区别?
Scrapy是一个Python的爬虫框架,爬取效率很高,具有高度定制性,但是不支持分布式;
Scrapy-redis是一个基于redis数据库、运行在Scrapy框架之上的组件,可以让Scrapy支持分布式策略,Slaver端共享Master端redis数据库里的item队列、请求队列和请求指纹集合。
为什么会选择redis数据库呢?
因为redis支持主从同步,数据库都是缓存在内存中的,所以基于redis的分布式爬虫,对请求和数据的高频读取效率非常高。
Scrapy框架怎么样?
Scrapy是适用于Python的一个快速、高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据。Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试。
Scrapy吸引人的地方在于它是一个框架,任何人都可以根据需求方便的修改。它也提供了多种类型爬虫的基类,如BaseSpider、sitemap爬虫等,最新版本又提供了web2.0爬虫的支持。
尽管Scrapy原本是设计用来屏幕抓取(更精确的说,是网络抓取),但它也可以用来访问API来提取数据。