Scrapy - kolekcja statystyk

Opis

Stats Collector jest narzędziem dostarczanym przez Scrapy do zbierania statystyk w postaci klucza / wartości i jest dostępne za pomocą Crawler API (Crawler zapewnia dostęp do wszystkich podstawowych komponentów Scrapy). Kolektor statystyk zapewnia jedną tabelę statystyk dla każdego pająka, w której kolektor statystyk otwiera się automatycznie, gdy pająk się otwiera i zamyka kolektor statystyk, gdy pająk jest zamknięty.

Typowe zastosowania kolektora statystyk

Poniższy kod uzyskuje dostęp do modułu zbierającego statystyki przy użyciu stats atrybut.

class ExtensionThatAccessStats(object): 
   def __init__(self, stats): 
      self.stats = stats  
   
   @classmethod 
   def from_crawler(cls, crawler): 
      return cls(crawler.stats)

Poniższa tabela przedstawia różne opcje, których można używać z kolektorem statystyk -

Sr.No Parametry Opis
1
stats.set_value('hostname', socket.gethostname())
Służy do ustawiania wartości statystyk.
2
stats.inc_value('customized_count')
Zwiększa wartość statystyki.
3
stats.max_value('max_items_scraped', value)
Możesz ustawić wartość statystyki, tylko jeśli jest większa niż poprzednia wartość.
4
stats.min_value('min_free_memory_percent', value)
Możesz ustawić wartość statystyki, tylko jeśli jest niższa od poprzedniej wartości.
5
stats.get_value('customized_count')
Pobiera wartość statystyki.
6
stats.get_stats() {'custom_count': 1, 'start_time': 
datetime.datetime(2009, 7, 14, 21, 47, 28, 977139)}
Pobiera wszystkie statystyki

Dostępne kolektory statystyk

Scrapy zapewnia różne typy kolektorów statystyk, do których można uzyskać dostęp za pomocą STATS_CLASS oprawa.

MemoryStatsCollector

Jest to domyślny moduł zbierający statystyki, który przechowuje statystyki każdego pająka, który był używany do skrobania, a dane zostaną zapisane w pamięci.

class scrapy.statscollectors.MemoryStatsCollector

DummyStatsCollector

Ten kolektor statystyk jest bardzo wydajny i nic nie robi. Można to ustawić za pomocą ustawienia STATS_CLASS i można go użyć do wyłączenia gromadzenia statystyk w celu poprawy wydajności.

class scrapy.statscollectors.DummyStatsCollector