如何让多个Scrapy蜘蛛同时解析URL链接列表?

时间:2017-06-28 21:42:27

标签: python scrapy multiprocessing

我有一个大约1000个URL的列表,我需要从每个URL中提取相同类型的数据。有没有办法让Scrapy一次“部署”多个蜘蛛,每个从列表中取一个URL并解析页面,然后输出到一个公共字典?我正在考虑使用10个或更多的蜘蛛来做到这一点。

1 个答案:

答案 0 :(得分:0)

您是否尝试在不使用多个蜘蛛的情况下解决任务?

尝试将所有网址添加到' start_urls'在' start_requests'中列出或获取文件中的网址列表方法并使用Srapy的设置调整并发级别,例如' CONCURRENT_REQUESTS'和' CONCURRENT_ITEMS',如:

custom_settings = {
    'CONCURRENT_REQUESTS': '1000',
    'CONCURRENT_ITEMS': '10000'
}

或更适合您的任务的事情。

P.S。从URL列表生成大量Scrapy蜘蛛并与scrapy-deploy(http://scrapyd.readthedocs.io/en/stable/)同时运行它们也是一种选择,虽然它看起来有点像我一样脏。