我已经实现了一个使用scrapyd API 触发scrapy Spiders 的web 应用程序(web 应用程序和scrapyd 在同一台服务器上运行)。
我的 Web 应用程序正在存储从数据库中的 scrapyd 返回的作业 ID。我的蜘蛛正在数据库中存储项目。
问题是:如何在数据库中链接scrapyd 发布的作业ID 和爬网发布的项目?
我可以使用一个额外的参数来触发我的蜘蛛——比如说我的网络应用程序生成的 ID——但我不确定它是最好的解决方案。最后,如果scrapyd已经发布了它,则不需要创建该ID...
谢谢你的帮助
该问题应表述为“如何在运行时获取scrapyd 任务的作业ID?”
当scrapyd 运行蜘蛛时,它实际上将作业ID 作为参数提供给蜘蛛。应始终作为 的最后一个参数sys.args。
此外,
os.environ['SCRAPY_JOB']应该做的伎俩。
| 归档时间: |
|
| 查看次数: |
821 次 |
| 最近记录: |