2011-09-05 2 views
11

크롤링 할 매우 큰 URL 목록이있는 CrawlSpider의 Scrapy가 있습니다. 나는 그것을 멈추고, 현재 상태를 저장하고, 다시 시작하지 않고 나중에 다시 시작할 수 있기를 원합니다. Scrapy 프레임 워크에서이를 수행 할 수있는 방법이 있습니까?치료 CrawlSpider를 중지하고 나중에 중단 된 부분부터 다시 시작할 수 있습니까?

+1

여기를 지원합니다 :. 여기에 실제 명령의 http://doc.scrapy.org/en/0.16/topics/jobs.html –

답변

6

불과 몇 달 전 ML에 대한 질문이 있었다 : 우리는 단지 그것을 고려하지만, 또한 작업을하지 않을

: http://groups.google.com/group/scrapy-users/browse_thread/thread/6a8df07daff723fc?pli=1

견적 파블로가. 이전과 거미를 실행하려면 http://hg.scrapy.org/users/pablo/mq/file/tip/scheduler_single_spider .... http://hg.scrapy.org/users/pablo/mq/file/tip/persistent_scheduler.patch : 사람이 초기 미리보기 (그들은 순서대로 적용해야) 시도하고자 경우에이 기능을 추가 내 MQ에서 현재이 작업 패치가 있습니다 (영속) :

scrapy crawl thespider 

이 디렉토리에서 스케줄러 + dupefilter 상태를 저장하는 거미를 실행하려면 : 크롤링 동안

scrapy crawl thespider --set SCHEDULER_DIR=run1 

, 당신은 취소^C를 공격 할 수 없다

scrapy crawl thespider --set SCHEDULER_DIR=run1 

SCHEDULER_DIR 설정 이름이 최종 출시 전에 변경 수밖에 없다,하지만 아이디어는 동일합니다 - 어디 상태를 유지하는 디렉토리 을 통과 것을 : 크롤링과는 이후로 다시 시작합니다.

+0

SCHEDULER_DIR이 아닌 JOBDIR을 사용해야합니다 (아래 niko_gramophon의 게시물 참조). – Naijaba

8

해당 기능이 최신 치료 버전에 포함되어 있지만 매개 변수 이름이 변경되었음을 공유하고 싶었습니다. 당신은 다음과 같이 사용한다 :

scrapy 기어 thespider --set JOBDIR = Run1로 지정한

여기

더 많은 정보 http://doc.scrapy.org/en/latest/topics/jobs.html#job-directory

+2

@niko_gramphon, 이것이 dupefilter 상태를 다시 말하면 알 수 있습니까? 또한 csv 파일을 작성하고 동일한 파일을 다시 사용하기를 원하면 코스튬 코드를 추가해야합니까? 감사. – x89a10

2

Scrapy은 지금 여기에 문서화 자신의 사이트에 이에 대한 작업 기능이 있습니다

을 이제 0.16 Scrapy V의로

scrapy crawl somespider -s JOBDIR=crawls/somespider-1 
관련 문제