This commit is contained in:
jxxghp 2023-08-29 08:18:34 +08:00
parent 8f352c23c8
commit 05a0026ea4
2 changed files with 30 additions and 9 deletions

View File

@ -319,9 +319,18 @@ class DownloadChain(ChainBase):
if not torrent_path: if not torrent_path:
continue continue
torrent_episodes = self.torrent.get_torrent_episodes(torrent_files) torrent_episodes = self.torrent.get_torrent_episodes(torrent_files)
if torrent_episodes \ if torrent_episodes:
and len(torrent_episodes) >= __get_season_episodes(need_tmdbid, # 总集数
torrent_season[0]): need_total = __get_season_episodes(need_tmdbid, torrent_season[0])
if len(torrent_episodes) < need_total:
# 更新集数范围
begin_ep = min(torrent_episodes)
end_ep = max(torrent_episodes)
meta.set_episodes(begin=begin_ep, end=end_ep)
logger.info(
f"{meta.org_string} 解析文件集数为 [{begin_ep}-{end_ep}],不是完整合集")
continue
else:
# 下载 # 下载
download_id = self.download_single(context=context, download_id = self.download_single(context=context,
torrent_file=torrent_path, torrent_file=torrent_path,
@ -329,7 +338,7 @@ class DownloadChain(ChainBase):
userid=userid) userid=userid)
else: else:
logger.info( logger.info(
f"{meta.org_string} 解析文件集数为 {len(torrent_episodes)}未含所需集数") f"{meta.org_string} 解析文件集数为 {len(torrent_episodes)}不是完整合集")
continue continue
else: else:
# 下载 # 下载

View File

@ -440,10 +440,22 @@ class MetaBase(object):
elif len(ep) > 1 and str(ep[0]).isdigit() and str(ep[-1]).isdigit(): elif len(ep) > 1 and str(ep[0]).isdigit() and str(ep[-1]).isdigit():
self.begin_episode = int(ep[0]) self.begin_episode = int(ep[0])
self.end_episode = int(ep[-1]) self.end_episode = int(ep[-1])
self.total_episode = (self.end_episode - self.begin_episode) + 1
elif str(ep).isdigit(): elif str(ep).isdigit():
self.begin_episode = int(ep) self.begin_episode = int(ep)
self.end_episode = None self.end_episode = None
def set_episodes(self, begin: int, end: int):
"""
设置开始集结束集
"""
if begin:
self.begin_episode = begin
if end:
self.end_episode = end
if self.begin_episode and self.end_episode:
self.total_episode = (self.end_episode - self.begin_episode) + 1
def merge(self, meta: Self): def merge(self, meta: Self):
""" """
全并Meta信息 全并Meta信息