Scrapy是一个框架,他本身是不支持分布式的。如果我们想要做分布式的爬虫,就需要借助一个组件叫做Scrapy-Redis,这个组件正是利用了Redis可以分布式的功能,集成到Scrapy框架中,使得爬虫可以进行分布式。
利用Redis数据库实现分布式爬取,基本思想是将Scrapy爬虫获取到的params都放到Redis Queue中,所有的爬虫也都从指定的Redis Queue中获取params,Scrapy-Redis组件中默认使用SpiderPriorityQueue来确定获取的先后次序,待爬取评论页面的参数队列的共享是爬虫可以部署在其他服务器上完成同一个爬取任务的一个关键点。
Master端管理Redis数据库和分发下载任务,Slave部署Scrapy爬虫提取网页和解析提取数据,最后将解析的数据存储在
同一个MongoDb数据库中。分布式爬虫架构如图所示。
scrapy分布式爬虫的配置
最新推荐文章于 2024-06-21 15:11:58 发布