美文网首页
Scrapy同时启动多个爬虫

Scrapy同时启动多个爬虫

作者: 宇宙有只AGI | 来源:发表于2019-04-26 11:56 被阅读0次

一、方法

1、通过CrawlerProcess

"""

from scrapy.crawlerimport CrawlerProcess

from scrapy.utils.projectimport get_project_settings

def run_process_spiders(spider_list=None):

    process = CrawlerProcess(get_project_settings())

    for spider in spider_list:

        process.crawl(spider)

    process.start()

"""

二、参考资料

1、在同一个进程中运行多个蜘蛛(官方,使用中)

https://docs.scrapy.org/en/latest/topics/practices.html#run-from-script

2、scrapy启动多爬虫(简书,测试可用)

https://www.jianshu.com/p/03a68cbacf92

三、思考

1、不使用scrapy-redis的原因

a. 启动后好像是按顺序执行的(即一个个执行爬虫,速度变慢)

b. redis内存吃不消(两个就满了)

c. 服务器重启后等一些意外情况,会导致redis重启,保存的request指纹丢失

d. 即便指纹不丢失,也可能会出现数据丢失的情况

相关文章

网友评论

      本文标题:Scrapy同时启动多个爬虫

      本文链接:https://www.haomeiwen.com/subject/oujfnqtx.html