from dataclasses import dataclass, field from typing import Any, Dict, List @dataclass class StatsModel: """Class that models the output of the Tumblr stats script.""" # Operation used to output stats. operation: str = field(default_factory=str) # Blog in question. blog_name: str = field(default_factory=str) # Tags used. tags: List[str] = field(default_factory=list) # Original posts. post_map: Dict[str, Any] = field(default_factory=dict) # Posts that are not original. dumpster: Dict[str, Any] = field(default_factory=dict) # Total posts handled. total_posts: int = field(default_factory=int) # Total original posts (per blog_name) handled. total_original_posts: int = field(default_factory=int) # Total original post (per blog_name) notes handled total_original_post_notes: int = field(default_factory=int) # Posts ranked from most popular to least popular. ranked_post_urls: List[str] = field(default_factory=list)