2011-11-02 5 views
0

이라는 cron 전용 생성자에서 호출되며 crontab 항목의 명령 줄로 사용되는 쉘 스크립트를 통해 호출됩니다. 쉘 스크립트 보이는 같은 :치료 스크립트는

scrapy 기어 targethost.com

시간이 때문이다하고 실행했다,하지만 생성자는 (내가 디버그 출력 확인)이라고 보인다.

scrapy 크롤 targethost.com &> cronlog.log

난 그냥 이유를 알고하지 않습니다 문제로 다시 쓰기 쉘 스크립트에 의해 해결된다.

답변

1

Scrapy가 올바르게 실행되지만 모든 메시지가 STDOUT으로 출력되지 않으므로 간단한 파이프 (>)는 모든 것을 파일로 리디렉션하지 않고 STDOUT으로 이동합니다 (사용자의 말처럼 생성자 만).

&>으로 모든 메시지를 치료에서 가져 와서 로그에 저장합니다.

+0

하지만 process_item에서 logger 메소드를 호출하지만 아무 것도 기록되지 않습니다. 이는 process_item이 호출되지 않았 음을 보여줍니다. 그러나 &> process_item이 호출되고 크롤링이 성공합니다. – user891260

+0

'command &> file'는'command'의 모든 출력을'file'으로 리디렉션하는 것입니다. 그것은'command'의 실행에 영향을 미치지 않습니다 (최소한 내가 아는 것은 없습니다). 당신의 문제는 어딘가에 있어야하지만 솔직히 말하면 나는 그곳에'&>'을 넣고 그대로 둡니다. – naeg