From ca70b832558d57af8fee6af5bd9580974c74246a Mon Sep 17 00:00:00 2001 From: MnFeN <85232361+MnFeN@users.noreply.github.com> Date: Fri, 18 Nov 2022 07:43:49 -0800 Subject: [PATCH] Create v1.1.py --- versions/v1.1.py | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 versions/v1.1.py diff --git a/versions/v1.1.py b/versions/v1.1.py new file mode 100644 index 0000000..7301bb7 --- /dev/null +++ b/versions/v1.1.py @@ -0,0 +1,48 @@ +import re +from xml.dom.minidom import Document +import pyperclip + +print("============================================================") +print("日志调试XML生成器 v1.0 by MnFeN") + +while 1: + print("============================================================") + + try: + tl_file = open("在此存储需要转换的日志行.txt", encoding='UTF-8') + except FileNotFoundError: + print("【错误】 同目录下 \"在此存储需要转换的日志行.txt\" 文件不存在。(按回车重试)") + input("============================================================") + continue + prev_time = -99999 + + xml = "\n" + count = 0 + + for line in tl_file: + line = line.strip('\n') + if re.match(r'^\[\d{2}:\d{2}:\d{2}\.\d{3}\] ', line): + re_line = re.match(r'^\[(?P..):(?P..):(?P..\....)\] ', line) + time = int(re_line.group("h")) * 3600 + int(re_line.group("m")) * 60 + float(re_line.group("s")) + count += 1 + if prev_time == -99999: + dt = 0 + elif time >= prev_time: + dt = time - prev_time + elif (time <= 120) and (time < prev_time) and (time + 86400 - prev_time <= 120): + dt = time + 86400 - prev_time + else: + dt = time - prev_time + print("\"" + line + "\" 行时间异常:time = " + str(time) +"; prev_time = " + str(prev_time)) + xml += "\n" + prev_time = time + + elif re.match(r'^ *$', line): + continue + else: + print("【警告】 \"" + line + "\" 无法识别为 ACT 解析日志行格式,已跳过本行。") + tl_file.close() + xml += "" + pyperclip.copy(xml) + input("已复制 XML 到剪贴板,按回车继续\n") +