扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
随着社会经济的发展和大数据的兴起,大量的数据等待着我们去挖掘它们潜在的价值,比如说爬虫技术的应用,利用爬虫可以快速有效的获取信息,从而为下一步的数据分析提供可靠的数据支持。但是在实际使用爬虫时会受到网络环境、数据规模以及服务器性能的限制,这时我们就需要分布式构建爬虫来提高爬虫的执行效率了。
scrapyRedis是一个基于scrapy框架的分布式爬虫框架,它特别专注于去重算法,把我们对于网络信息采集实现为一个可以自由扩展的分布式架构,可以一定程度的提高采集的效率。
scrapy_redis的结构包括六大部分,分别为Redis服务,爬虫Master、Spider,以及分别负责调度、队列存储和数据存储的模型;也就是说,它将爬虫、队列读取、去重等工作分发给多台服务器,从而采集到大量的信息,将之存入数据库中。
下面贴出一个基于ScrapyRedis的最基本的示例代码:
# 引入scrapy_redis的settings
from scrapy_redis.settings import SETTINGS
# 设置任务调度
SETTINGS[‘SCHEDULER’] = “scrapy_redis.scheduler.Scheduler”
# 设置去重算法
SETTINGS[‘DUPEFILTER_CLASS’] = “scrapy_redis.dupefilter.RFPDupeFilter”
# 设置请求的队列类型
SETTINGS[‘SCHEDULER_QUEUE_CLASS’] = ‘scrapy_redis.queue.SpiderQueue’
ScrapyRedis一至少可以有效的提高爬虫的执行效率,同时它也提供了方便的去重算法,并且支持动态增加slave机器,可以实现多级分布式爬虫,因此ScrapyRedis在构建分布式爬虫时是非常有价值的框架。
创新互联(cdcxhl.com)提供稳定的云服务器,香港云服务器,BGP云服务器,双线云服务器,高防云服务器,成都云服务器,服务器托管。精选钜惠,欢迎咨询:028-86922220。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流