Scrapyd: Как получить пауков или версию проекта scrapyd? - PullRequest
0 голосов
/ 09 мая 2020

Выясняется, что либо документация scrapyd неверна, либо есть ошибка. Я хочу получить список пауков из развернутого проекта. документы говорят мне сделать это следующим образом:

curl http://localhost:6800/listspiders.json?project=myproject

Итак, в моей среде это выглядит так:

merlin@192-143-0-9 spider2 % curl http://localhost:6800/listspiders.json?project=crawler                                                
zsh: no matches found: http://localhost:6800/listspiders.json?project=crawler

Таким образом, команда выглядит не так признал. Давайте проверим доступность проекта:

merlin@192-143-0-9 spider2 % curl http://localhost:6800/listprojects.json                  
{"node_name": "192-143-0-9.ip.airmobile.co.za", "status": "ok", "projects": ["crawler"]}

Мне кажется, все в порядке.

Еще раз проверяя документы, другие вызовы API принимают параметр не как GET, а другим способом:

curl http://localhost:6800/schedule.json -d project=myproject -d spider=somespider

Применяя это к спискам пауков:

merlin@192-143-0-9 spider2 % curl http://localhost:6800/listspiders.json -d project=crawler                                                 
{"node_name": "192-143-0-9.ip.airmobile.co.za", "status": "error", "message": "Expected one of [b'HEAD', b'object', b'GET']"}

Отсутствует параметр GET. Так что, похоже, мы бегаем по кругу.

Как можно получить список пауков или версию (listversion) с помощью scrapyd?

1 Ответ

0 голосов
/ 09 мая 2020

Может быть, URL-адрес нужно заключить в двойные кавычки, попробуйте

curl "http://localhost:6800/listspiders.json?project=crawler"
...