Scrapy-통계 수집
기술
Stats Collector는 Scrapy에서 키 / 값의 형태로 통계를 수집하기 위해 제공하는 기능이며 크롤러 API를 사용하여 액세스합니다 (크롤러는 모든 Scrapy 핵심 구성 요소에 대한 액세스를 제공합니다). 통계 수집기는 스파이더가 열릴 때 통계 수집기가 자동으로 열리고 스파이더가 닫히면 통계 수집기를 닫는 스파이더 당 하나의 통계 테이블을 제공합니다.
일반적인 통계 수집기 사용
다음 코드는 다음을 사용하여 통계 수집기에 액세스합니다. stats 속성.
class ExtensionThatAccessStats(object):
def __init__(self, stats):
self.stats = stats
@classmethod
def from_crawler(cls, crawler):
return cls(crawler.stats)
다음 표는 통계 수집기와 함께 사용할 수있는 다양한 옵션을 보여줍니다.
Sr. 아니요 | 매개 변수 | 기술 |
---|---|---|
1 | |
통계 값을 설정하는 데 사용됩니다. |
2 | |
통계 값을 증가시킵니다. |
삼 | |
이전 값보다 큰 경우에만 통계 값을 설정할 수 있습니다. |
4 | |
이전 값보다 낮은 경우에만 통계 값을 설정할 수 있습니다. |
5 | |
통계 값을 가져옵니다. |
6 | |
모든 통계를 가져옵니다. |
사용 가능한 통계 수집기
Scrapy는 다음을 사용하여 액세스 할 수있는 다양한 유형의 통계 수집기를 제공합니다. STATS_CLASS 환경.
MemoryStatsCollector
스크래핑에 사용 된 모든 스파이더의 통계를 유지하는 기본 통계 수집기이며 데이터는 메모리에 저장됩니다.
class scrapy.statscollectors.MemoryStatsCollector
DummyStatsCollector
이 통계 수집기는 아무 일도하지 않는 매우 효율적입니다. 이것은 STATS_CLASS 설정을 사용하여 설정할 수 있으며 성능 향상을 위해 통계 수집을 비활성화하는 데 사용할 수 있습니다.
class scrapy.statscollectors.DummyStatsCollector