Scrapy - Colección de estadísticas

Descripción

El recopilador de estadísticas es una función proporcionada por Scrapy para recopilar las estadísticas en forma de clave / valores y se accede a ella mediante la API del rastreador (el rastreador proporciona acceso a todos los componentes principales de Scrapy). El recopilador de estadísticas proporciona una tabla de estadísticas por araña en la que el recopilador de estadísticas se abre automáticamente cuando se abre la araña y cierra el recopilador de estadísticas cuando se cierra la araña.

Usos comunes del recopilador de estadísticas

El siguiente código accede al recopilador de estadísticas usando stats atributo.

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

La siguiente tabla muestra varias opciones que se pueden usar con el recopilador de estadísticas:

No Señor Parámetros Descripción
1
stats.set_value('hostname', socket.gethostname())
Se utiliza para establecer el valor de las estadísticas.
2
stats.inc_value('customized_count')
Incrementa el valor de la estadística.
3
stats.max_value('max_items_scraped', value)
Puede establecer el valor de la estadística, solo si es mayor que el valor anterior.
4
stats.min_value('min_free_memory_percent', value)
Puede establecer el valor de la estadística, solo si es inferior al valor anterior.
5
stats.get_value('customized_count')
Obtiene el valor de la estadística.
6
stats.get_stats() {'custom_count': 1, 'start_time': 
datetime.datetime(2009, 7, 14, 21, 47, 28, 977139)}
Obtiene todas las estadísticas

Recopiladores de estadísticas disponibles

Scrapy proporciona diferentes tipos de recopiladores de estadísticas a los que se puede acceder mediante el STATS_CLASS ajuste.

MemoryStatsCollector

Es el recopilador de estadísticas predeterminado que mantiene las estadísticas de cada araña que se utilizó para raspar y los datos se almacenarán en la memoria.

class scrapy.statscollectors.MemoryStatsCollector

DummyStatsCollector

Este recopilador de estadísticas es muy eficiente y no hace nada. Esto se puede configurar usando la configuración STATS_CLASS y se puede usar para deshabilitar la recopilación de estadísticas para mejorar el rendimiento.

class scrapy.statscollectors.DummyStatsCollector