feat 新增已入库媒体是否跟随TMDB信息变化开关,关闭则延用媒体库名称
This commit is contained in:
@ -65,6 +65,7 @@ docker pull jxxghp/moviepilot:latest
|
||||
- **DOWNLOAD_SUBTITLE:** 下载站点字幕,`true`/`false`,默认`true`
|
||||
- **REFRESH_MEDIASERVER:** 入库刷新媒体库,`true`/`false`,默认`true`
|
||||
- **SCRAP_METADATA:** 刮削入库的媒体文件,`true`/`false`,默认`true`
|
||||
- **SCRAP_FOLLOW_TMDB:** 新增已入库媒体是否跟随TMDB信息变化,`true`/`false`,默认`true`
|
||||
- **TORRENT_TAG:** 种子标签,默认为`MOVIEPILOT`,设置后只有MoviePilot添加的下载才会处理,留空所有下载器中的任务均会处理
|
||||
- **LIBRARY_PATH:** 媒体库目录,多个目录使用`,`分隔
|
||||
- **LIBRARY_MOVIE_NAME:** 电影媒体库目录名,默认`电影`
|
||||
|
@ -351,6 +351,11 @@ class TransferChain(ChainBase):
|
||||
# 媒体目录
|
||||
if transfer_info.target_path.is_file():
|
||||
transfer_info.target_path = transfer_info.target_path.parent
|
||||
# 如果未开启新增已入库媒体是否跟随TMDB信息变化则根据tmdbid查询之前的title
|
||||
if not settings.SCRAP_FOLLOW_TMDB:
|
||||
transfer_historys = self.transferhis.get_by(tmdbid=str(mediainfo.tmdb_id))
|
||||
if not transfer_historys:
|
||||
mediainfo.title = transfer_historys[0].title
|
||||
# 刮削
|
||||
self.scrape_metadata(path=transfer_info.target_path, mediainfo=media)
|
||||
# 刷新媒体库,根目录或季目录
|
||||
|
@ -39,6 +39,8 @@ class Settings(BaseSettings):
|
||||
SEARCH_SOURCE: str = "themoviedb"
|
||||
# 刮削入库的媒体文件
|
||||
SCRAP_METADATA: bool = True
|
||||
# 新增已入库媒体是否跟随TMDB信息变化
|
||||
SCRAP_FOLLOW_TMDB: bool = True
|
||||
# 刮削来源
|
||||
SCRAP_SOURCE: str = "themoviedb"
|
||||
# TMDB图片地址
|
||||
|
@ -308,6 +308,12 @@ class DirMonitor(_PluginBase):
|
||||
transferinfo=transferinfo
|
||||
)
|
||||
|
||||
# 如果未开启新增已入库媒体是否跟随TMDB信息变化则根据tmdbid查询之前的title
|
||||
if not settings.SCRAP_FOLLOW_TMDB:
|
||||
transfer_historys = self.transferhis.get_by(tmdbid=str(mediainfo.tmdb_id))
|
||||
if not transfer_historys:
|
||||
mediainfo.title = transfer_historys[0].title
|
||||
|
||||
# 刮削元数据,根目录或季目录
|
||||
self.chain.scrape_metadata(path=transferinfo.target_path.parent,
|
||||
mediainfo=mediainfo)
|
||||
|
@ -10,6 +10,7 @@ from apscheduler.triggers.cron import CronTrigger
|
||||
from app.core.config import settings
|
||||
from app.core.context import MediaInfo
|
||||
from app.core.metainfo import MetaInfo
|
||||
from app.db.transferhistory_oper import TransferHistoryOper
|
||||
from app.helper.nfo import NfoReader
|
||||
from app.log import logger
|
||||
from app.plugins import _PluginBase
|
||||
@ -41,6 +42,7 @@ class LibraryScraper(_PluginBase):
|
||||
user_level = 1
|
||||
|
||||
# 私有属性
|
||||
transferhis = None
|
||||
_scheduler = None
|
||||
_scraper = None
|
||||
# 限速开关
|
||||
@ -66,6 +68,7 @@ class LibraryScraper(_PluginBase):
|
||||
|
||||
# 启动定时任务 & 立即运行一次
|
||||
if self._enabled or self._onlyonce:
|
||||
self.transferhis = TransferHistoryOper(self.db)
|
||||
self._scheduler = BackgroundScheduler(timezone=settings.TZ)
|
||||
if self._cron:
|
||||
logger.info(f"媒体库刮削服务启动,周期:{self._cron}")
|
||||
@ -304,6 +307,11 @@ class LibraryScraper(_PluginBase):
|
||||
if not mediainfo:
|
||||
logger.warn(f"未识别到媒体信息:{file}")
|
||||
continue
|
||||
# 如果未开启新增已入库媒体是否跟随TMDB信息变化则根据tmdbid查询之前的title
|
||||
if not settings.SCRAP_FOLLOW_TMDB:
|
||||
transfer_historys = self.transferhis.get_by(tmdbid=str(mediainfo.tmdb_id))
|
||||
if not transfer_historys:
|
||||
mediainfo.title = transfer_historys[0].title
|
||||
# 开始刮削
|
||||
self.chain.scrape_metadata(path=file, mediainfo=mediainfo)
|
||||
|
||||
|
Reference in New Issue
Block a user