Учебники

Scrapy — Stats Collection

Stats Collector — это средство, предоставляемое Scrapy для сбора статистики в виде ключей / значений, доступ к которой осуществляется с помощью API Crawler (Crawler обеспечивает доступ ко всем основным компонентам Scrapy). Сборщик статистики предоставляет одну таблицу статистики для каждого паука, в которой сборщик статистики открывается автоматически при открытии паука и закрывает сборщик статистики при закрытии паука.

Обычное использование сборщика статистики

Следующий код обращается к сборщику статистики, используя атрибут stats .

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

В следующей таблице показаны различные параметры, которые можно использовать со сборщиком статистики.

Sr.No параметры Описание
1
stats.set_value('hostname', socket.gethostname())
Используется для установки значения статистики.
2
stats.inc_value('customized_count')
Это увеличивает значение стат.
3
stats.max_value('max_items_scraped', value)
Вы можете установить значение статистики, только если оно больше предыдущего значения.
4
stats.min_value('min_free_memory_percent', value)
Вы можете установить значение статистики, только если оно ниже предыдущего значения.
5
stats.get_value('customized_count')
Получает значение стат.
6
stats.get_stats() {'custom_count': 1, 'start_time': datetime.datetime(2009, 7, 14, 21, 47, 28, 977139)} 
Получает всю статистику

Доступные Статистика Коллекционеры

Scrapy предоставляет различные типы сборщика статистики, доступ к которому можно получить с помощью настройки STATS_CLASS .

MemoryStatsCollector

Это сборщик статистики по умолчанию, который поддерживает статистику каждого паука, который использовался для очистки, и данные будут храниться в памяти.

class scrapy.statscollectors.MemoryStatsCollector

DummyStatsCollector

Этот сборщик статистики очень эффективен и ничего не делает. Это может быть установлено с помощью параметра STATS_CLASS и может быть использовано для отключения сбора статистики для повышения производительности.