【问题标题】:Scrapyd pause/continue jobScrapyd暂停/继续工作
【发布时间】:2017-09-26 05:50:14
【问题描述】:

看起来没有合法的方式来暂停/继续使用 Scrapyd 爬行,就像使用 Scrapy 本身一样(scrapy crawl spider -s JOBDIR=jobdir/spider-1)。 我发现的唯一解决方案是:

https://groups.google.com/forum/#!msg/scrapyusers/2VjEBEbOo7s/MSH4GJc2B0sJ

但我不明白这个想法。

那么是否可以使用 Scrapyd 暂停/继续工作?

感谢您的宝贵时间

【问题讨论】:

    标签: python scrapy scrapyd


    【解决方案1】:

    思路如下:

    当您从 cmd 运行爬虫时,您可以粘贴额外的参数,例如:scrapy crawl myspider -s JOBDIR=crawls/somespider-1

    当您在端点schedule.json 中使用Scrapyd 时,您还可以粘贴一些设置。如果您使用的是scrapyd-client,它将如下所示:

    s = {'JOBDIR': 'crawls/somespider-1'}
    job = api.schedule(project_name, spider_name, settings=s)
    

    之后,您可以取消作业。下一次,当你将运行相同的工作 - scrapyd 恢复以前的工作

    【讨论】:

    • 对不起,我不明白在哪里写这个选项。如果我运行爬虫: (curl localhost:6800/schedule.json -d project=my-parsers -d spider=my_spider) 我应该在哪里粘贴你的代码?
    • 在这种情况下,您可以拨打电话:curl localhost:6800/schedule.json -d project=my-parsers -d spider=my_spider -d settings=JOBDIR=crawls/somespider-1
    • 不幸的是它也不起作用。当我恢复这样的工作时:curl localhost:6800/schedule.json -d project=my-parsers -d spider=my_spider -d settings=JOBDIR=crawls/somespider-1 jobid=3123asds5f34141asdfesw324 新的解析从头开始,只有一个日志是相同的
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-18
    • 2013-09-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多