Scrapyd: No active project - 如何使用 scrapyd 安排蜘蛛
Scrapyd: No active project - How to schedule spiders with scrapyd
我正在尝试在 scrapyd 1.2 的帮助下安排一个 scrapy 2.1.0 蜘蛛
curl --insecure http://localhost:6800/schedule.json -d project=bid -d spider=test
理论上,这应该会在项目投标中开始抓取蜘蛛测试。相反,它输出错误消息:
{"node_name": "spider1", "status": "error", "message": "Scrapy 2.1.0 - no active project\n\nUnknown command: list\n\nUse \"scrapy\" to see available commands\n"}
如果我 cd 进入项目目录,我可以通过 "cd /var/spiders/ && scrapy crawl test &" 启动包含多个蜘蛛的项目。
但是在另一个文件夹中蜂鸣也会给我消息 "no active projects":
/var$ scrapy list
Scrapy 2.1.0 - no active project
Unknown command: list
Use "scrapy" to see available commands
这看起来与我从 scrapyd 获得的信息完全相同,所以我怀疑我需要以某种方式配置我的项目所在的工作目录。
Scrapyd 是 运行 我可以通过网络访问控制台 "gui".
通过 scrapyd 启动作业的正确方法是什么?
在使用 scrapyd 启动蜘蛛之前,您必须先部署蜘蛛。您可以通过以下方式做到这一点:
- 使用 addversion.json (https://scrapyd.readthedocs.io/en/latest/api.html#addversion-json)
- 使用 scrapyd-deploy (https://github.com/scrapy/scrapyd-client)
我正在尝试在 scrapyd 1.2 的帮助下安排一个 scrapy 2.1.0 蜘蛛
curl --insecure http://localhost:6800/schedule.json -d project=bid -d spider=test
理论上,这应该会在项目投标中开始抓取蜘蛛测试。相反,它输出错误消息:
{"node_name": "spider1", "status": "error", "message": "Scrapy 2.1.0 - no active project\n\nUnknown command: list\n\nUse \"scrapy\" to see available commands\n"}
如果我 cd 进入项目目录,我可以通过 "cd /var/spiders/ && scrapy crawl test &" 启动包含多个蜘蛛的项目。
但是在另一个文件夹中蜂鸣也会给我消息 "no active projects":
/var$ scrapy list
Scrapy 2.1.0 - no active project
Unknown command: list
Use "scrapy" to see available commands
这看起来与我从 scrapyd 获得的信息完全相同,所以我怀疑我需要以某种方式配置我的项目所在的工作目录。
Scrapyd 是 运行 我可以通过网络访问控制台 "gui".
通过 scrapyd 启动作业的正确方法是什么?
在使用 scrapyd 启动蜘蛛之前,您必须先部署蜘蛛。您可以通过以下方式做到这一点:
- 使用 addversion.json (https://scrapyd.readthedocs.io/en/latest/api.html#addversion-json)
- 使用 scrapyd-deploy (https://github.com/scrapy/scrapyd-client)