您当前的位置:首页 > 计算机 > 编程开发 > Python

Scrapy分布式爬虫

时间:04-09来源:作者:点击数:

要使用pycharm跑多个running的话需要设置允许多个实例运行。

点击 运行→编辑配置→编辑配置模板→选择python→点击允许多个实例

这样pycharm就可以测试多个scrapy同时进行爬取

在这里插入图片描述

使用scrapy分布式爬虫的时候需要scrapy_redis模块的安装

pip install scrapy_redis

class TuSpider(RedisSpider):  # 1. 更换继承关系
    """
    分布式爬虫
    """
    name = "tu"
    allowed_domains = ["xxxxxxx"]
    # start_urls = ["hxxxxx/"]
    # 2. 分布式爬虫不需要start_urls了
    # 3. 更换为redis_key, 这个key对应的是起始的url
    redis_key = "tupian:start_urls"
起始url在redis中可以手工录入
lpush tupian:start_urls xxxxx

以下为settings的配置

SCHEDULER = "scrapy_redis.scheduler.Scheduler"  # 将调度器替换为scrapy_redis的调度器
SCHEDULER_PERSIST = True  # 这里如果为真 ,在关闭时自动保存请求信息,如果为假,则不保存
DUPEFILTER_CLASS = "scrapy_redis.dupefilter.RFPDupeFilter"  # 去重逻辑
ITEM_PIPELINES = {
    "fenbushitupian.pipelines.FenbushitupianPipeline": 300,
    "scrapy_redis.pipelines.RedisPipeline": 301  # 配置redis的pipeline
}

# redis配置
REDIS_HOST = '127.0.0.1'
REDIS_PORT = 6379
REDIS_DB = 8
REDIS_PARAMS = {
    # "password":"123456"
}

其他部分的编写按正常代码编写就可以了

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门