
- Scrapy 教程
- Scrapy - 首頁
- Scrapy 基本概念
- Scrapy - 概述
- Scrapy - 環境
- Scrapy - 命令列工具
- Scrapy - 爬蟲
- Scrapy - 選擇器
- Scrapy - 專案
- Scrapy - 專案載入器
- Scrapy - Shell
- Scrapy - 專案管道
- Scrapy - 資料匯出
- Scrapy - 請求 & 響應
- Scrapy - 連結提取器
- Scrapy - 設定
- Scrapy - 異常
- Scrapy 即時專案
- Scrapy - 建立專案
- Scrapy - 定義專案
- Scrapy - 第一個爬蟲
- Scrapy - 爬取
- Scrapy - 提取專案
- Scrapy - 使用專案
- Scrapy - 跟蹤連結
- Scrapy - 抓取資料
- Scrapy 有用資源
- Scrapy - 快速指南
- Scrapy - 有用資源
- Scrapy - 討論
Scrapy - 統計收集
描述
統計收集器是 Scrapy 提供的一個功能,用於以鍵值對的形式收集統計資料,可以透過爬蟲 API 訪問它(爬蟲提供對所有 Scrapy 核心元件的訪問)。每個爬蟲都有一個統計收集表,當爬蟲啟動時,統計收集器會自動開啟,當爬蟲關閉時,統計收集器會自動關閉。
常見的統計收集器用途
以下程式碼使用stats屬性訪問統計收集器。
class ExtensionThatAccessStats(object): def __init__(self, stats): self.stats = stats @classmethod def from_crawler(cls, crawler): return cls(crawler.stats)
下表顯示了可以使用各種選項與統計收集器進行互動:
序號 | 引數 | 描述 |
---|---|---|
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設定來使用它,並且可以用來停用統計收集以提高效能。
class scrapy.statscollectors.DummyStatsCollector
廣告