Как сохранить вывод команды Scrapy crawl

Я пытаюсь сохранить вывод команды scrapy crawl, которую я пробовал scrapy crawl someSpider -o some.json -t json >> some.text Но это не сработало ...может ли кто-нибудь сказать мне, как я могу сохранить вывод в текстовый файл....Я имею в виду журналы и информацию, напечатанную скрэпи...

4 ответов


вам также нужно перенаправить stderr. Вы перенаправляете только stdout. Вы можете перенаправить его как-то так:

scrapy crawl someSpider -o some.json -t json 2> some.text

ключ № 2, который "выбирает" stderr, в качестве источника для перенаправления.

Если вы хотите, чтобы перенаправить stderr и stdout в один файл, вы можете использовать:

scrapy crawl someSpider -o some.json -t json &> some.text

подробнее о перенаправлении вывода: http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO-3.html


вы можете добавить эти строки в свой settings.py:

LOG_STDOUT = True
LOG_FILE = '/tmp/scrapy_output.txt'

а затем начать сканирование нормально:

scrapy crawl someSpider

Если вы хотите получить вывод из команды runspider.

scrapy runspider scraper.py -o some.json -t json 2> some.text

Это тоже работает.


можно использовать nohup:

nohup scrapy crawl someSpider &

журнал будет храниться в nohup.вон!--3-->