From 365491c1fcf523994035e4bd28d8b5872dd6ec98 Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期四, 31 七月 2025 14:47:48 +0800
Subject: [PATCH] 除权采用掘金更新K线

---
 log_module/log_analyse.py |   63 +++++++++++++++++--------------
 1 files changed, 35 insertions(+), 28 deletions(-)

diff --git a/log_module/log_analyse.py b/log_module/log_analyse.py
index 41ce05a..379012b 100644
--- a/log_module/log_analyse.py
+++ b/log_module/log_analyse.py
@@ -62,38 +62,45 @@
 
 # 鍒嗘瀽L2鏁版嵁浼犺緭鏃堕棿
 def analyze_l2_data_transformation(path_):
-    with open(path_, 'r') as f:
-        while True:
-            line = f.readline()
+    with open(path_, 'r', encoding="utf-8") as f:
+        lines = f.readlines()
+        for line in lines:
             if not line:
                 break
-            datas = line.split("|")
-            create_time = datas[0].strip()
-            data = datas[2].split("-")[1].strip()
-            code = data.split("#")[0]
-            l2_data = data.split("#")[1]
-            l2_data = eval(l2_data)
-            max_time_data = None
-            min_time_data = None
-            for d in l2_data:
-                if len(d) > 10:
-                    if max_time_data is None:
-                        max_time_data = d
-                    if min_time_data is None:
-                        min_time_data = d
-                    if d[10] > max_time_data[10]:
-                        max_time_data = d
-                    if d[10] < min_time_data[10]:
-                        min_time_data = d
-            if max_time_data and min_time_data:
-                dt = datetime.datetime.strptime(create_time.split(".")[0], "%Y-%m-%d %H:%M:%S")
-                create_timestamp = int(dt.timestamp() * 1000) + int(create_time.split(".")[1])
-                if create_timestamp - min_time_data[10] > 20:
-                    print(create_time, f"鏁伴噺:{len(l2_data)}", code, create_timestamp - min_time_data[10],
-                          create_timestamp - max_time_data[10])
+            try:
+                datas = line.split("|")
+                create_time = datas[0].strip()
+                data = datas[2].split(" - ")[1].strip()
+                contents = data.split("#")
+                code = contents[0]
+                use_time = int(contents[1].strip().split("锛�")[1].split("-")[-2])
+                l2_data = contents[2]
+                l2_data = eval(l2_data)
+                max_time_data = None
+                min_time_data = None
+                for d in l2_data:
+                    if len(d) > 10:
+                        if max_time_data is None:
+                            max_time_data = d
+                        if min_time_data is None:
+                            min_time_data = d
+                        if d[10] > max_time_data[10]:
+                            max_time_data = d
+                        if d[10] < min_time_data[10]:
+                            min_time_data = d
+                if max_time_data and min_time_data:
+                    dt = datetime.datetime.strptime(create_time.split(".")[0], "%Y-%m-%d %H:%M:%S")
+                    create_timestamp = int(dt.timestamp() * 1000) + int(create_time.split(".")[1])
+                    if use_time > 100:
+                        print(create_time, f"鏁伴噺:{len(l2_data)}", f"鑰楁椂锛歿use_time}", code,
+                              create_timestamp - min_time_data[10],
+                              create_timestamp - max_time_data[10])
+            except:
+                print(line)
+                pass
 
         pass
 
 
 if __name__ == "__main__":
-    analyze_l2_data_transformation("D:\\logs\\huaxin_l2\\orderdetail.2023-08-23.log")
+    analyze_l2_data_transformation("D:\\logs\\huaxin_l2\\orderdetail.2023-08-29.log")

--
Gitblit v1.8.0