Scrapy - การรวบรวมสถิติ

คำอธิบาย

Stats Collector เป็นสิ่งอำนวยความสะดวกที่ Scrapy จัดให้เพื่อรวบรวมสถิติในรูปแบบของคีย์ / ค่าและเข้าถึงได้โดยใช้ Crawler API (Crawler ให้การเข้าถึงส่วนประกอบหลักของ Scrapy ทั้งหมด) ตัวรวบรวมสถิติจัดเตรียมตารางสถิติหนึ่งตารางต่อหนึ่งแมงมุมซึ่งตัวรวบรวมสถิติจะเปิดโดยอัตโนมัติเมื่อสไปเดอร์เปิดและปิดตัวรวบรวมสถิติเมื่อแมงมุมปิด

การใช้ตัวรวบรวมสถิติทั่วไป

รหัสต่อไปนี้เข้าถึงตัวรวบรวมสถิติโดยใช้ stats แอตทริบิวต์

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

ตารางต่อไปนี้แสดงตัวเลือกต่างๆที่สามารถใช้กับตัวรวบรวมสถิติ -

ซีเนียร์ No พารามิเตอร์ คำอธิบาย
1
stats.set_value('hostname', socket.gethostname())
ใช้เพื่อตั้งค่าสถิติ
2
stats.inc_value('customized_count')
มันจะเพิ่มค่า stat
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