fix download_hash补充逻辑
This commit is contained in:
@ -345,22 +345,25 @@ class DirMonitor(_PluginBase):
|
|||||||
for torrent in qb_torrents:
|
for torrent in qb_torrents:
|
||||||
if str(torrent.get("name")) == str(torrent_name) \
|
if str(torrent.get("name")) == str(torrent_name) \
|
||||||
or str(torrent.get("name")) == str(torrent_name2):
|
or str(torrent.get("name")) == str(torrent_name2):
|
||||||
|
files = self.qb.get_files(tid=torrent.get("hash"))
|
||||||
|
if files:
|
||||||
|
for file in files:
|
||||||
|
torrent_file_name = file.get("name")
|
||||||
|
if str(file_name) == str(os.path.basename(torrent_file_name)):
|
||||||
return torrent.get("hash")
|
return torrent.get("hash")
|
||||||
|
|
||||||
# 处理辅种器 遍历所有种子,按照添加升序升序,第一个种子是初始种子
|
# 处理辅种器 遍历所有种子,按照添加时间升序
|
||||||
mate_torrents = []
|
if len(tr_torrents) > 0:
|
||||||
|
tr_torrents = sorted(tr_torrents, key=lambda x: x.added_date)
|
||||||
for torrent in tr_torrents:
|
for torrent in tr_torrents:
|
||||||
if str(torrent.get("name")) == str(torrent_name) \
|
if str(torrent.get("name")) == str(torrent_name) \
|
||||||
or str(torrent.get("name")) == str(torrent_name2):
|
or str(torrent.get("name")) == str(torrent_name2):
|
||||||
mate_torrents.append(torrent)
|
files = self.tr.get_files(tid=torrent.get("hashString"))
|
||||||
|
if files:
|
||||||
# 匹配上则按照时间升序
|
for file in files:
|
||||||
if mate_torrents:
|
torrent_file_name = file.name
|
||||||
if len(mate_torrents) > 1:
|
if str(file_name) == str(os.path.basename(torrent_file_name)):
|
||||||
mate_torrents = sorted(mate_torrents, key=lambda x: x.added_date)
|
return torrent.get("hashString")
|
||||||
# 最早添加的hash是下载的hash
|
|
||||||
return mate_torrents[0].get("hashString")
|
|
||||||
|
|
||||||
return None
|
return None
|
||||||
|
|
||||||
def get_state(self) -> bool:
|
def get_state(self) -> bool:
|
||||||
|
Reference in New Issue
Block a user