【发布时间】:2015-11-10 21:01:11
【问题描述】:
有谁知道我如何在不同的网站上运行相同的 Scrapy scraper 超过 200 次,每个网站都有各自的输出文件?通常在 Scrapy 中,当你从命令行运行它时,你会通过输入 -o filename.json. 来指明输出文件
【问题讨论】:
标签: python web-scraping scrapy
有谁知道我如何在不同的网站上运行相同的 Scrapy scraper 超过 200 次,每个网站都有各自的输出文件?通常在 Scrapy 中,当你从命令行运行它时,你会通过输入 -o filename.json. 来指明输出文件
【问题讨论】:
标签: python web-scraping scrapy
多种方式:
Create a pipeline 删除具有可配置参数的项目,例如运行scrapy crawl myspider -a output_filename=output_file.txt。 output_filename 作为参数添加到蜘蛛,现在您可以从如下管道访问它:
class MyPipeline(object):
def process_item(self, item, spider):
filename = spider.output_filename
# now do your magic with filename
您可以run scrapy within a python script,然后也可以对输出项进行操作。
【讨论】:
我也在做类似的事情。这是我所做的:
scrapyd 以运行您的蜘蛛我已经使用上述策略浅抓取了 200 万个域名,不到 5 天就完成了。
【讨论】: