From 150f4bfc14988e950f8af591af277a68e5300128 Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期一, 30 九月 2024 18:21:38 +0800 Subject: [PATCH] 精选板块爬取修改 --- third_data/kpl_data_manager.py | 34 ++++++++++++++++++++++++++++------ 1 files changed, 28 insertions(+), 6 deletions(-) diff --git a/third_data/kpl_data_manager.py b/third_data/kpl_data_manager.py index 50f174e..151ba24 100644 --- a/third_data/kpl_data_manager.py +++ b/third_data/kpl_data_manager.py @@ -478,6 +478,11 @@ logger_debug.info("浠诲姟淇-寮�鐩樺暒锛氭定鍋滃垪琛�") # 澶т簬20s灏遍渶瑕佹洿鏂� threading.Thread(target=cls.run_limit_up_task, daemon=True).start() + key = "jingxuan_rank" + if key not in cls.__latest_update_time_dict or time.time() - cls.__latest_update_time_dict[key] > 20: + logger_debug.info("浠诲姟淇-寮�鐩樺暒锛氱簿閫夊垪琛�") + # 澶т簬20s灏遍渶瑕佹洿鏂� + threading.Thread(target=cls.run_market_jingxuan, daemon=True).start() @classmethod def run_limit_up_task(cls): @@ -485,7 +490,7 @@ log.close_print() while True: try: - if (tool.is_trade_time() and int(tool.get_now_time_str().replace(':', '')) > int("092530")) or True: + if (tool.is_trade_time() and int(tool.get_now_time_str().replace(':', '')) > int("092530")): results = kpl_api.getLimitUpInfoNew() result = json.loads(results) start_time = time.time() @@ -500,6 +505,20 @@ pass finally: cls.__latest_update_time_dict["limit_up"] = time.time() + time.sleep(3) + + @classmethod + def run_market_jingxuan(cls): + while True: + try: + if tool.is_trade_time(): + results = kpl_api.getMarketJingXuanRealRankingInfo() + result = json.loads(results) + cls.__upload_data("jingxuan_rank", result) + except: + pass + finally: + cls.__latest_update_time_dict["jingxuan_rank"] = time.time() time.sleep(3) @classmethod @@ -530,22 +549,25 @@ def get_market_jingxuan(): while True: - if tool.is_trade_time() or True: + if tool.is_trade_time(): try: results = kpl_api.getMarketJingXuanRealRankingInfo() result = json.loads(results) cls.__upload_data("jingxuan_rank", result) except: pass - time.sleep(3) + finally: + cls.__latest_update_time_dict["jingxuan_rank"] = time.time() + time.sleep(3) + else: + time.sleep(3) threading.Thread(target=cls.run_limit_up_task, daemon=True).start() # threading.Thread(target=get_bidding_money, daemon=True).start() # threading.Thread(target=get_market_industry, daemon=True).start() - threading.Thread(target=get_market_jingxuan, daemon=True).start() + threading.Thread(target=cls.run_market_jingxuan, daemon=True).start() if __name__ == "__main__": - print(get_latest_current_limit_up_records()) - print(get_latest_current_limit_up_records()) + PullTask.run_pull_task() input() -- Gitblit v1.8.0