From 21c96ed504f93f16ce6f8a3ccf164a87c9edd9c0 Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期二, 30 一月 2024 15:45:23 +0800 Subject: [PATCH] 增加调试日志 --- third_data/kpl_api.py | 101 ++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 85 insertions(+), 16 deletions(-) diff --git a/third_data/kpl_api.py b/third_data/kpl_api.py index 187eff3..3e62e3d 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 # 绔炰环 @@ -38,16 +39,51 @@ 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 " + "&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) + print(result) + return result + + +def getLimitUpInfoNew(): + pids = [(1, "棣栨澘"), (2, "2杩炴澘"), (3, "3杩炴澘"), (4, "4杩炴澘"), (5, "")] + fresults = [] + for pid_info in pids: + results = [] + for i in range(10): + start_time = time.time() + result = __getLimitUpInfo(pid_info[0], i + 1, 20) + print("璇锋眰鐢ㄦ椂", time.time() - start_time) + result = json.loads(result) + datas = result["info"][0] + results.extend(datas) + day = result["info"][1] + print(datas) + 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_)) @@ -60,6 +96,19 @@ elif len(list_) > MAX_SIZE: return json.dumps(result) return None + + +def getHistoryLimitUpInfo(day): + fresults = [] + for i in range(0, 5): + 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 # 甯傚満琛屾儏-琛屼笟 @@ -142,7 +191,7 @@ result = json.loads(result) if result: if "List" in result: - names = [x["CName"] for x in result["List"]] + names = [kpl_util.filter_block(x["CName"]) for x in result["List"]] return names return [] @@ -154,7 +203,7 @@ result = json.loads(result) if result: if "List" in result: - names = [x["CName"] for x in result["List"]] + names = [kpl_util.filter_block(x["CName"]) for x in result["List"]] return names return [] @@ -178,16 +227,36 @@ return list(set(blocks)) +# 鑾峰彇F10閲岄潰鐨勫ぇ浜嬩欢 +def __getF10BigReminders(code): + data = f"a=BigReminder&st=25&apiv=w32&c=StockF10Basic&StockID={code}&PhoneOSNew=1&DeviceID=a38adabd-99ef-3116-8bb8-6d893c846e23&VerSion=5.8.0.2&Index=0&" + result = __base_request("https://apparticle.longhuvip.com/w1/api/index.php", data=data, timeout=3) + result = json.loads(result) + if int(result["errcode"]) == 0: + return result["info"] + return None + + +# 鑾峰彇鑲$エ鍑忔寔鏃ユ湡 +def getCodeReductionDate(code): + infos = __getF10BigReminders(code) + if not infos: + return None + keys = ["缁堟", "缁撴潫", "缁撴灉", "涓嶅噺鎸�", "瀹屾垚"] + for info in infos: + if info.get("type") == 5: + title = str(info.get("title")) + if title.find("鍑忔寔") < 0: + continue + wrong = False + for k in keys: + if title.find(k) >= 0: + wrong = True + if wrong: + continue + return info.get("date").split(" ")[0] + return None + if __name__ == "__main__": - blocks = getCodeBlocks("600713") - blocks1 = getCodeJingXuanBlocks("600713") - if len(blocks) > 2: - # 鏍规嵁娑ㄥ箙鎺掑簭 - blocks.sort(key=lambda x: x[2]) - blocks.reverse() - datas = [] - for b in blocks: - if b[2] > 0 and b[1] not in constant.KPL_INVALID_BLOCKS: - datas.append(b) - print(datas) + print(getLimitUpInfoNew()) -- Gitblit v1.8.0