scrapy_redis 要实现分布式爬虫,需要分析项目中的spiders文件夹中的爬虫文件
#----1 导入分布式爬虫类
from scrapy_redis.spiders import RedisSpider
#----2 继承分布式爬虫类
class BookSpider(RedisSpider):
#----3 注销start_urls,增加了一个redis-key,没有start_urls,因为分布式中,如果每台电脑都请求一次start_url就会重复
redis_key = 'start_url在redis中对应的键'
#----4 多了__init__方法,该方法不是必须的,可以手动指定allow_domains
#----4.1 注销allowed_domains
# # 修改允许的域xxx
# allowed_domains = ['xxx.com']
# # 修改起始的url
# start_urls = ['https://xxx.com']
#----4.2 配置__init__方法
def __init__(self, *args, **kwargs):
# Dynamically define the allowed domains list.
domain = kwargs.pop('domain', '')
self.allowed_domains = list(filter(None, domain.split(',')