From 2117d23eb1d354eca751c15951610ab9faca65d7 Mon Sep 17 00:00:00 2001 From: mos 9527 Date: Fri, 15 Sep 2023 22:13:30 +0800 Subject: [PATCH] Version 1.6.11 # CLI Fixes - When invoked directly (i.e. called with `pyncm`), undesired output is no longer produed - Fixes k-v extraction error introduced by the last commit somehow --- .../\346\255\214\345\215\225\345\220\214\346\255\245.py" | 2 +- pyncm/__init__.py | 2 +- pyncm/__main__.py | 9 ++++++--- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git "a/demos/\346\255\214\345\215\225\345\220\214\346\255\245.py" "b/demos/\346\255\214\345\215\225\345\220\214\346\255\245.py" index 8f0f2f7..9865a0b 100644 --- "a/demos/\346\255\214\345\215\225\345\220\214\346\255\245.py" +++ "b/demos/\346\255\214\345\215\225\345\220\214\346\255\245.py" @@ -35,7 +35,7 @@ def normalize(path): argv.append("--no-overwrite") # 不覆写已存在歌曲 # argv 传参,调用 __main__ 即可 -queuedTasks, failed_ids = __main__() +queuedTasks, failed_ids = __main__(return_tasks=True) # 无视拓展名的文件白名单 file_tree_whitelist = [normalize(task.save_as) for task in queuedTasks] # 只删除这些拓展名的文件 diff --git a/pyncm/__init__.py b/pyncm/__init__.py index f3ea5e1..a74d5b0 100644 --- a/pyncm/__init__.py +++ b/pyncm/__init__.py @@ -34,7 +34,7 @@ """ __VERSION_MAJOR__ = 1 __VERSION_MINOR__ = 6 -__VERSION_PATCH__ = 10 +__VERSION_PATCH__ = 11 __version__ = '%s.%s.%s' % (__VERSION_MAJOR__,__VERSION_MINOR__,__VERSION_PATCH__) diff --git a/pyncm/__main__.py b/pyncm/__main__.py index 0270e44..2738d6d 100644 --- a/pyncm/__main__.py +++ b/pyncm/__main__.py @@ -184,7 +184,8 @@ def execute(task: BaseKeyValueClass): apiCall = track.GetTrackAudioV1 if not task.routine.args.use_download_api else track.GetTrackDownloadURLV1 if task.routine.args.use_download_api: logger.warning("使用下载 API,可能消耗 VIP 下载额度!") dAudio = apiCall(task.audio.id, level=task.audio.level) - assert "data" in dAudio, "其他错误: %s" % dAudio + assert "data" in dAudio, "其他错误: %s" % dAudio + dAudio = dAudio['data'] if type(dAudio) == list: dAudio = dAudio[0] if not dAudio['url']: @@ -629,7 +630,7 @@ def print_help_and_exit(): assert args.save, "无效分享链接 %s" % ' '.join(args.url) # Allow invalid links for this one return args , [] -def __main__(): +def __main__(return_tasks=False): args , tasks = parse_args() log_stream = sys.stdout # Getting tqdm & logger to work nicely together @@ -764,7 +765,9 @@ def report(): report() logger.info(f'任务完成率 {(executor.finished_tasks * 100 / max(1,len(queuedTasks))):.1f}%') # To get actually downloaded tasks, filter by exlcuding failed_ids against task.song.ID - return queuedTasks, failed_ids + if return_tasks: + return queuedTasks, failed_ids + return if __name__ == "__main__":