2.分布式爬虫优点:
① 充分利用多台机器的带宽速度爬取数据
② 充分利用多台机器的IP爬取
3.通过状态管理器来调度scrapy,就需要改造一下scrapy,要解决两个问题:
① request之前是放在内存的,现在两台服务器就需要对队列进行集中管理。
② 去重也要进行集中管理
4.通过scrapy-redis搭建分布式爬虫
在github上搜索scrapy-redis,里面有具体的文档及介绍。
① 安装redis
通过pycharm安装redis
② 配置scrapy-redis
""" scrapy-redis配置 """
# Enables scheduling storing requests queue in redis.
SCHEDULER="scrapy_redis.scheduler.Scheduler"
# Ensure all spiders share same duplicates filter through redis.
DUPEFILTER_CLASS="scrapy_redis.dupefilter.RFPDupeFilter"
根据文档的说明,到settings.py中更改配置,在空白地方新增代码:
# Store scraped item in redis for post-processing. 分布式redispipeline
'scrapy_redis.pipelines.RedisPipeline': 300,


网友评论