From cbe19ea6066a600cbd0b5110db5d43f8252d14a8 Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期四, 13 六月 2024 11:23:53 +0800
Subject: [PATCH] L撤成交进度相关改进

---
 third_data/kpl_api.py |   79 ++++++++++++++++++++++++++++++---------
 1 files changed, 60 insertions(+), 19 deletions(-)

diff --git a/third_data/kpl_api.py b/third_data/kpl_api.py
index 8b7af15..83b1ddb 100644
--- a/third_data/kpl_api.py
+++ b/third_data/kpl_api.py
@@ -4,6 +4,7 @@
 import requests
 
 import constant
+from third_data import kpl_util
 from utils import middle_api_protocol
 
 # 绔炰环
@@ -18,7 +19,7 @@
 DABAN_TYPE_EVER_LIMIT_DOWN = 5
 
 
-def __base_request(url, data, timeout=60):
+def __base_request(url, data, timeout=10):
     DELEGATE = True
     if not DELEGATE:
         headers = {
@@ -33,21 +34,53 @@
             raise Exception("璇锋眰鍑洪敊")
         return response.text
     else:
-        fdata = middle_api_protocol.load_kpl(url, data)
+        fdata = middle_api_protocol.load_kpl(url, data, timeout)
         return middle_api_protocol.request(fdata)
 
 
 def daBanList(pidType, page_size=50, index=0):
-    data = f"Order=1&a=DaBanList&st={page_size}&c=HomeDingPan&PhoneOSNew=1&DeviceID=a38adabd-99ef-3116-8bb9-6d893c846e23" \
+    data = f"Order=1&a=DaBanList&st={page_size}&c=HomeDingPan&PhoneOSNew=1&DeviceID=a38adabd-99ef-3116-8bb9-6d893c846e24" \
            f"&VerSion=5.8.0.2&Index={index}&Is_st=1&PidType={pidType}&apiv=w32&Type=4&FilterMotherboard=0&Filter=0&FilterTIB=0" \
            "&FilterGem=0"
     result = __base_request("https://apphq.longhuvip.com/w1/api/index.php", data=data)
     return result
 
 
+def __getLimitUpInfo(pidType, page, pageSize):
+    data = f"Order=0&a=DailyLimitPerformance&st={pageSize}&apiv=w35&Type=4&c=HomeDingPan&PhoneOSNew=1&DeviceID=a38adabd-99ef-3116-8bb9-6d893c846e24&VerSion=5.13.0.0&Index={(page - 1) * pageSize}&PidType={pidType}&"
+    result = __base_request("https://apphq.longhuvip.com/w1/api/index.php", data=data)
+    return result
+
+
+def getLimitUpInfoNew():
+    pids = [(1, "棣栨澘"), (2, "2杩炴澘"), (3, "3杩炴澘"), (4, "4杩炴澘"), (5, "")]
+    fresults = []
+    for pid_info in pids:
+        results = []
+        for i in range(100):
+            start_time = time.time()
+            result = __getLimitUpInfo(pid_info[0], i + 1, 20)
+            result = json.loads(result)
+            datas = result["info"][0]
+            results.extend(datas)
+            day = result["info"][1]
+            if len(datas) < 20:
+                break
+        for r in results:
+            if not r[18] and pid_info[1]:
+                r[18] = pid_info[1]
+            # 鏇挎崲鎺夋澘鍧楀悕绉�
+            for i in range(len(r)):
+                if type(r[i]) == str:
+                    r[i] = kpl_util.filter_block(r[i])
+        fresults.extend(results)
+
+    return json.dumps({"errcode": 0, "list": fresults})
+
+
 def getLimitUpInfo():
     list_ = []
-    page_size = 50
+    page_size = 20
     MAX_SIZE = 150
     for i in range(0, 10):
         result_str = daBanList(DABAN_TYPE_LIMIT_UP, page_size=page_size, index=len(list_))
@@ -61,9 +94,18 @@
             return json.dumps(result)
     return None
 
+
 def getHistoryLimitUpInfo(day):
-    data = f"Order=1&a=HisDaBanList&st=19&c=HisHomeDingPan&PhoneOSNew=1&DeviceID=a38adabd-99ef-3116-8bb9-6d893c846e23&VerSion=5.8.0.2&Index=0&Is_st=1&PidType=1&apiv=w32&Type=6&FilterMotherboard=0&Filter=0&FilterTIB=0&Day={day}&FilterGem=0&"
-    result = __base_request("https://apphis.longhuvip.com/w1/api/index.php", data=data)
+    fresults = []
+    for i in range(0, 100):
+        data = f"Order=1&a=HisDaBanList&st=20&c=HisHomeDingPan&PhoneOSNew=1&DeviceID=a38adabd-99ef-3116-8bb9-6d893c846e23&VerSion=5.8.0.2&Index={i * 20}&Is_st=1&PidType=1&apiv=w32&Type=6&FilterMotherboard=0&Filter=0&FilterTIB=0&Day={day}&FilterGem=0&"
+        result = __base_request("https://apphis.longhuvip.com/w1/api/index.php", data=data)
+        result = json.loads(result)
+        result = result["list"]
+        fresults.extend(result)
+        if len(result) < 20:
+            break
+    return fresults
 
 
 # 甯傚満琛屾儏-琛屼笟
@@ -146,7 +188,7 @@
     result = json.loads(result)
     if result:
         if "List" in result:
-            names = [x["CName"].replace("姒傚康", "") for x in result["List"]]
+            names = [kpl_util.filter_block(x["CName"]) for x in result["List"]]
             return names
     return []
 
@@ -158,7 +200,7 @@
     result = json.loads(result)
     if result:
         if "List" in result:
-            names = [x["CName"].replace("姒傚康", "") for x in result["List"]]
+            names = [kpl_util.filter_block(x["CName"]) for x in result["List"]]
             return names
     return []
 
@@ -168,17 +210,19 @@
     blocks = []
     try:
         _bks = __getConceptJXBK(code)
+        print(_bks)
         if _bks:
             blocks.extend(_bks)
     except:
         pass
-
-    try:
-        _bks = __getConceptBK(code)
-        if _bks:
-            blocks.extend(_bks)
-    except:
-        pass
+    if not blocks:
+        try:
+            _bks = __getConceptBK(code)
+            print(_bks)
+            if _bks:
+                blocks.extend(_bks)
+        except:
+            pass
     return list(set(blocks))
 
 
@@ -214,7 +258,4 @@
 
 
 if __name__ == "__main__":
-    codes = "000422,000536,000619,000766,000892,001255,001258,001300,002288,002442,002584,002632,002771,002942,300505,300949,600293,600610,600679,600769,603168,603188,603291,603329,603392,603518,603759,603767,603836,603839,603938,605218,688655"
-    codes = codes.split(",")
-    for code in codes:
-        print(code, getCodeReductionDate(code))
+    print(getZYLTAmount("300198"))

--
Gitblit v1.8.0