나는 Scrapy 스파이더와 파이프 라인 설정이 있습니다.Pipeline.close_spider() 메소드에서 Scrapy에 오류가 발생했는지 어떻게 알 수 있습니까?
My Spider는 웹 사이트에서 데이터를 추출하고 Pipeline의 process_item() 메소드는 추출 된 데이터를 임시 데이터베이스 테이블에 삽입합니다.
결국 Pipeline의 close_spider() 메소드에서 임시 데이터베이스 테이블에 대한 몇 가지 오류 검사를 실행합니다. 문제가 없으면 임시 테이블을 영구 보존합니다.
그러나 파이프 라인의 close_spider() 메소드가 호출되기 전에 Scrapy에서 예외가 발생하면 추출 된 데이터가 불완전한 것으로 간주 될 수 있습니다.
파이프 라인의 close_spider() 메소드에서 Scrapy에서 예외가 발생했는지 확인하는 방법이 있습니까? 오류 (추출 된 데이터가 불완전 할 수 있음을 나타냄)가있는 경우 임시 테이블을 영구적으로 만들고 싶지 않습니다.
CLOSESPIDER_ERRORCOUNT를 1로 설정 한 CloseSpider 확장 프로그램을 사용하여 첫 번째 오류가 발생하면 스파이더를 닫습니다. 그러나, 나는 파이프 라인의 close_spider() 메소드에서 정상 닫기와 에러 닫기를 구별하는 방법을 알아 내지 못했다.