diff --git a/musicdownloader.py b/musicdownloader.py index 1b04db8..26663ea 100644 --- a/musicdownloader.py +++ b/musicdownloader.py @@ -20,6 +20,7 @@ import base64 import datetime import json +import logging import os import re import secrets @@ -51,6 +52,9 @@ set_api_server = "http://api.injahow.cn/meting/" g_music_dir_name = "MusicB" +g_log_dir = "MusicLogB" +g_log_path = g_log_dir + "/" + str( + time.strftime('%Y-%m-%d-%H-%M-%S', time.localtime(time.time()))) + ".log" g_width = os.get_terminal_size().columns # 为了打印一整行的分隔符 g_base62 = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789' g_iv = '0102030405060708' @@ -72,6 +76,13 @@ } +def print_log(*args, sep=' ', end='\n', file=None): + """ 与print绑定,将print输出作为日志存储 """ + message = sep.join(str(arg) for arg in args) + end + logging.debug(message) + if file is None: + built_in_print(*args, sep=sep, end=end) + def plog(pinfo): """ 用来输入没有换行符的内容 """ print(pinfo, end = '') @@ -705,7 +716,6 @@ def main(): global set_api_server init() # 初始化colorama库 parser = argparse.ArgumentParser() # 启动参数检测 - if not os.path.exists(g_music_dir_name): os.mkdir(g_music_dir_name) parser.add_argument('args_url', nargs='?', help='Music URL') parser.add_argument('--args_server', '-s', help='Download Music API Server') args = parser.parse_args() @@ -714,4 +724,9 @@ def main(): else: command_start(args) if __name__ == "__main__": + if not os.path.exists(g_music_dir_name): os.mkdir(g_music_dir_name) + if not os.path.exists(g_log_dir): os.mkdir(g_log_dir) + logging.basicConfig(filename=g_log_path, level=logging.DEBUG) + built_in_print = print + print = print_log # pylint: disable=redefined-builtin main()