mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-08-15 02:54:20 +08:00
51 lines
1.4 KiB
Python
51 lines
1.4 KiB
Python
"""种子缓存 API 输出模型。"""
|
|
|
|
from typing import Optional
|
|
|
|
from pydantic import BaseModel, Field
|
|
|
|
from app.schemas.types import MediaSource
|
|
|
|
|
|
class TorrentCacheItem(BaseModel):
|
|
"""单条站点种子缓存。"""
|
|
|
|
hash: str
|
|
domain: str
|
|
title: Optional[str] = None
|
|
description: Optional[str] = None
|
|
size: Optional[int] = None
|
|
pubdate: Optional[str] = None
|
|
site_name: Optional[str] = None
|
|
media_name: Optional[str] = None
|
|
media_year: Optional[str | int] = None
|
|
media_type: Optional[str] = None
|
|
media_source: Optional[MediaSource] = None
|
|
media_id: Optional[str] = None
|
|
music_type: Optional[str] = None
|
|
season_episode: Optional[str] = None
|
|
resource_term: Optional[str] = None
|
|
enclosure: Optional[str] = None
|
|
page_url: Optional[str] = None
|
|
poster_path: Optional[str] = None
|
|
backdrop_path: Optional[str] = None
|
|
|
|
|
|
class TorrentCacheData(BaseModel):
|
|
"""种子缓存统计及明细。"""
|
|
|
|
count: int = 0
|
|
sites: int = 0
|
|
data: list[TorrentCacheItem] = Field(default_factory=list)
|
|
|
|
|
|
class TorrentReidentifyData(BaseModel):
|
|
"""种子重新识别后的媒体身份。"""
|
|
|
|
media_name: Optional[str] = None
|
|
media_year: Optional[str | int] = None
|
|
media_type: Optional[str] = None
|
|
media_source: Optional[MediaSource] = None
|
|
media_id: Optional[str] = None
|
|
music_type: Optional[str] = None
|