【问题标题】:Scrapy process.crawl() to export data to jsonScrapy process.crawl() 将数据导出到 json
【发布时间】:2016-10-18 23:50:29
【问题描述】:

这可能是Passing arguments to process.crawl in Scrapy python 的子问题,但作者将答案(我问自己的子问题没有回答)标记为令人满意的答案。

这是我的问题:我不能使用scrapy crawl mySpider -a start_urls(myUrl) -o myData.json
相反,我想/需要使用crawlerProcess.crawl(spider) 我已经想出了几种传递参数的方法(无论如何它在我链接的问题中得到了回答)但我无法理解我应该如何告诉它转储数据进入 myData.json...-o myData.json 部分
有人有建议吗?还是我只是不明白它应该如何工作..?

代码如下:

crawlerProcess = CrawlerProcess(settings)
crawlerProcess.install()
crawlerProcess.configure()

spider = challenges(start_urls=["http://www.myUrl.html"])
crawlerProcess.crawl(spider)
#For now i am just trying to get that bit of code to work but obviously it will become a loop later.

dispatcher.connect(handleSpiderIdle, signals.spider_idle)

log.start()
print "Starting crawler."
crawlerProcess.start()
print "Crawler stopped."

【问题讨论】:

    标签: python json scrapy web-crawler


    【解决方案1】:

    您需要在设置中指定它:

    process = CrawlerProcess({
        'FEED_URI': 'file:///tmp/export.json',
    })
    
    process.crawl(MySpider)
    process.start()
    

    【讨论】:

    • 但是你不能使用它来传递几个参数,例如-o Sachin_urls.csv -t csv -L INFO --logfile Sachin.log。当使用 `scrapy crawl -a -o Sachin_urls.csv -t csv myspidername -L INFO --logfile Sachin.log 时,这将完美运行。有什么指点吗?
    猜你喜欢
    • 2016-03-26
    • 2015-09-09
    • 2019-09-17
    • 2022-09-23
    • 1970-01-01
    • 2021-01-28
    • 2011-12-11
    • 2015-02-27
    相关资源
    最近更新 更多