fix #594
This commit is contained in:
@ -8,6 +8,7 @@ from apscheduler.schedulers.background import BackgroundScheduler
|
|||||||
from apscheduler.triggers.cron import CronTrigger
|
from apscheduler.triggers.cron import CronTrigger
|
||||||
|
|
||||||
from app.core.config import settings
|
from app.core.config import settings
|
||||||
|
from app.core.meta import MetaBase
|
||||||
from app.core.metainfo import MetaInfo
|
from app.core.metainfo import MetaInfo
|
||||||
from app.db.transferhistory_oper import TransferHistoryOper
|
from app.db.transferhistory_oper import TransferHistoryOper
|
||||||
from app.helper.nfo import NfoReader
|
from app.helper.nfo import NfoReader
|
||||||
@ -295,18 +296,21 @@ class LibraryScraper(_PluginBase):
|
|||||||
continue
|
continue
|
||||||
# 开始刮削目录
|
# 开始刮削目录
|
||||||
if sub_path.is_dir():
|
if sub_path.is_dir():
|
||||||
|
# 判断目录是不是媒体目录
|
||||||
|
dir_meta = MetaInfo(sub_path.name)
|
||||||
|
if not dir_meta.name or not dir_meta.year:
|
||||||
|
logger.warn(f"{sub_path} 可能不是媒体目录,请检查刮削目录配置,跳过 ...")
|
||||||
|
continue
|
||||||
logger.info(f"开始刮削目录:{sub_path} ...")
|
logger.info(f"开始刮削目录:{sub_path} ...")
|
||||||
self.__scrape_dir(sub_path)
|
self.__scrape_dir(path=sub_path, dir_meta=dir_meta)
|
||||||
logger.info(f"目录 {sub_path} 刮削完成")
|
logger.info(f"目录 {sub_path} 刮削完成")
|
||||||
logger.info(f"媒体库 {path} 刮削完成")
|
logger.info(f"媒体库 {path} 刮削完成")
|
||||||
|
|
||||||
def __scrape_dir(self, path: Path):
|
def __scrape_dir(self, path: Path, dir_meta: MetaBase):
|
||||||
"""
|
"""
|
||||||
削刮一个目录,该目录必须是媒体文件目录
|
削刮一个目录,该目录必须是媒体文件目录
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# 目录识别
|
|
||||||
dir_meta = MetaInfo(path.name)
|
|
||||||
# 媒体信息
|
# 媒体信息
|
||||||
mediainfo = None
|
mediainfo = None
|
||||||
|
|
||||||
@ -318,14 +322,15 @@ class LibraryScraper(_PluginBase):
|
|||||||
return
|
return
|
||||||
|
|
||||||
# 识别元数据
|
# 识别元数据
|
||||||
meta_info = MetaInfo(file.name)
|
meta_info = MetaInfo(file.stem)
|
||||||
# 合并
|
# 合并
|
||||||
meta_info.merge(dir_meta)
|
meta_info.merge(dir_meta)
|
||||||
# 是否刮削
|
# 是否刮削
|
||||||
scrap_metadata = settings.SCRAP_METADATA
|
scrap_metadata = settings.SCRAP_METADATA
|
||||||
|
|
||||||
# 识别媒体信息
|
# 没有媒体信息或者名字出现变化时,需要重新识别
|
||||||
if not mediainfo:
|
if not mediainfo \
|
||||||
|
or meta_info.name != dir_meta.name:
|
||||||
# 优先读取本地nfo文件
|
# 优先读取本地nfo文件
|
||||||
tmdbid = None
|
tmdbid = None
|
||||||
if meta_info.type == MediaType.MOVIE:
|
if meta_info.type == MediaType.MOVIE:
|
||||||
|
Reference in New Issue
Block a user