Scrapy - coleção de estatísticas

Descrição

O Stats Collector é um recurso fornecido pelo Scrapy para coletar as estatísticas na forma de chaves / valores e é acessado usando a API Crawler (o Crawler fornece acesso a todos os componentes principais do Scrapy). O coletor de estatísticas fornece uma tabela de estatísticas por aranha na qual o coletor de estatísticas abre automaticamente quando a aranha está abrindo e fecha o coletor de estatísticas quando a aranha é fechada.

Usos comuns do coletor de estatísticas

O código a seguir acessa o coletor de estatísticas usando stats atributo.

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

A tabela a seguir mostra que várias opções podem ser usadas com o coletor de estatísticas -

Sr. Não Parâmetros Descrição
1
stats.set_value('hostname', socket.gethostname())
É usado para definir o valor das estatísticas.
2
stats.inc_value('customized_count')
Ele aumenta o valor da estatística.
3
stats.max_value('max_items_scraped', value)
Você pode definir o valor stat, apenas se for maior que o valor anterior.
4
stats.min_value('min_free_memory_percent', value)
Você pode definir o valor stat, apenas se for inferior ao valor anterior.
5
stats.get_value('customized_count')
Ele busca o valor da estatística.
6
stats.get_stats() {'custom_count': 1, 'start_time': 
datetime.datetime(2009, 7, 14, 21, 47, 28, 977139)}
Ele busca todas as estatísticas

Coletores de estatísticas disponíveis

O Scrapy fornece diferentes tipos de coletor de estatísticas que podem ser acessados ​​usando o STATS_CLASS configuração.

MemoryStatsCollector

É o coletor de estatísticas padrão que mantém as estatísticas de cada aranha que foi usada para raspagem e os dados serão armazenados na memória.

class scrapy.statscollectors.MemoryStatsCollector

DummyStatsCollector

Este coletor de estatísticas é muito eficiente e não faz nada. Isso pode ser definido usando a configuração STATS_CLASS e pode ser usado para desativar a coleta de estatísticas a fim de melhorar o desempenho.

class scrapy.statscollectors.DummyStatsCollector