📅  最后修改于: 2020-10-31 14:40:30             🧑  作者: Mango
Stats Collector是Scrapy提供的一种用于收集键/值形式的统计信息的工具,可使用Crawler API进行访问(Crawler提供对所有Scrapy核心组件的访问)。统计信息收集器为每个蜘蛛网提供一个统计信息表,其中,当蜘蛛网打开时,统计信息收集器自动打开,而当蜘蛛网关闭时,统计信息收集器关闭。
以下代码使用stats属性访问stats收集器。
class ExtensionThatAccessStats(object):
def __init__(self, stats):
self.stats = stats
@classmethod
def from_crawler(cls, crawler):
return cls(crawler.stats)
下表显示了可与统计信息收集器一起使用的各种选项-
Sr.No | Parameters | Description |
---|---|---|
1 |
stats.set_value('hostname', socket.gethostname()) |
It is used to set the stats value. |
2 |
stats.inc_value('customized_count') |
It increments the stat value. |
3 |
stats.max_value('max_items_scraped', value) |
You can set the stat value, only if greater than previous value. |
4 |
stats.min_value('min_free_memory_percent', value) |
You can set the stat value, only if lower than previous value. |
5 |
stats.get_value('customized_count') |
It fetches the stat value. |
6 |
stats.get_stats() {'custom_count': 1, 'start_time': datetime.datetime(2009, 7, 14, 21, 47, 28, 977139)} |
It fetches all the stats |
Scrapy提供了不同类型的统计信息收集器,可以使用STATS_CLASS设置进行访问。
这是默认的Stats收集器,它维护用于抓取的每个Spider的统计信息,数据将存储在内存中。
class scrapy.statscollectors.MemoryStatsCollector
此统计信息收集器非常有效,它什么也不做。可以使用STATS_CLASS设置进行设置,并且可以用于禁用统计信息收集以提高性能。
class scrapy.statscollectors.DummyStatsCollector