mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-07-06 23:31:28 +08:00
refactor(media): 引入配置化刮削策略
This commit is contained in:
1088
app/chain/media.py
1088
app/chain/media.py
File diff suppressed because it is too large
Load Diff
@@ -398,3 +398,41 @@ class OtherModulesType(Enum):
|
||||
PostgreSQL = "PostgreSQL"
|
||||
# Redis
|
||||
Redis = "Redis"
|
||||
|
||||
|
||||
class NameValueEnum(Enum):
|
||||
"""支持通过 name 或 value 实例化的枚举基类"""
|
||||
|
||||
@classmethod
|
||||
def _missing_(cls, value):
|
||||
if isinstance(value, str):
|
||||
for member in cls:
|
||||
if member.name.lower() == value.lower() or member.value == value:
|
||||
return member
|
||||
return None
|
||||
|
||||
|
||||
# 刮削策略
|
||||
class ScrapingPolicy(NameValueEnum):
|
||||
MISSINGONLY = "仅缺失"
|
||||
SKIP = "跳过"
|
||||
OVERWRITE = "覆盖"
|
||||
|
||||
|
||||
# 刮削目标类型
|
||||
class ScrapingTarget(NameValueEnum):
|
||||
MOVIE = "电影"
|
||||
TV = "电视剧"
|
||||
SEASON = "季"
|
||||
EPISODE = "集"
|
||||
|
||||
|
||||
# 刮削元数据类型
|
||||
class ScrapingMetadata(NameValueEnum):
|
||||
NFO = "NFO"
|
||||
POSTER = "海报"
|
||||
BACKDROP = "背景图"
|
||||
LOGO = "Logo"
|
||||
BANNER = "横幅图"
|
||||
THUMB = "缩略图"
|
||||
DISC = "光盘图"
|
||||
|
||||
Reference in New Issue
Block a user