From d424997fce8151bb020ed7d33a0fa6fb74e5be9c Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期四, 09 一月 2025 14:47:46 +0800 Subject: [PATCH] BUG修复 --- third_data/kpl_data_manager.py | 58 ++++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 46 insertions(+), 12 deletions(-) diff --git a/third_data/kpl_data_manager.py b/third_data/kpl_data_manager.py index 4de7470..09b95c7 100644 --- a/third_data/kpl_data_manager.py +++ b/third_data/kpl_data_manager.py @@ -72,7 +72,13 @@ pass @classmethod - def save_record(cls, day, records): + def save_record(cls, day, records, set_not_open=False): + """ + @param day: + @param records: + @param set_not_open: 鏄惁闇�瑕佽缃偢鏉夸笌鍚� + @return: + """ # 缁熻鐐告澘 try: last_codes = set() @@ -149,6 +155,10 @@ mysqldb.execute( f"update kpl_limit_up_record set _latest_limit_up_time='{d[3]}',_limit_up_time='{d[2]}',_hot_block_code_count={d[10]},_limit_up_high_info='{d[4]}' ,_update_time=now() where _id='{_id}'") cls.latest_datas[_id] = d + if set_not_open: + # 闇�瑕佽缃笉鐐告澘 + mysqldb.execute(f"update kpl_limit_up_record set _open = 0, _update_time = now() where _id='{_id}'") + cls.latest_datas[_id] = d # 鑾峰彇鍘熸潵鐨勪唬鐮佹墍灞炴澘鍧�,鍒犻櫎涔嬪墠閿欒鐨勬澘鍧� @@ -367,7 +377,7 @@ if lines: if int(file[0].replace("-", "")) <= int(max_day.replace("-", "")): fresults.append((file[0], json.loads(lines[0]))) - if len(fresults) >=count: + if len(fresults) >= count: break return fresults @@ -487,17 +497,23 @@ 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_in, 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_in, daemon=True).start() + # + # key = "jingxuan_rank_out" + # 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_out, daemon=True).start() - key = "jingxuan_rank_out" + key = "market_strong" if key not in cls.__latest_update_time_dict or time.time() - cls.__latest_update_time_dict[key] > 20: - logger_debug.info("浠诲姟淇-寮�鐩樺暒锛氱簿閫夋祦鍑哄垪琛�") + logger_debug.info("浠诲姟淇-寮�鐩樺暒锛氬競鍦哄己搴�") # 澶т簬20s灏遍渶瑕佹洿鏂� - threading.Thread(target=cls.run_market_jingxuan_out, daemon=True).start() + threading.Thread(target=cls.run_market_strong, daemon=True).start() @classmethod def run_limit_up_task(cls): @@ -559,6 +575,23 @@ time.sleep(3) @classmethod + def run_market_strong(cls): + """ + 绮鹃�夋祦鍑� + @return: + """ + while True: + try: + if tool.is_trade_time(): + strong_value = kpl_api.getMarketStrong() + cls.__upload_data("market_strong", strong_value) + except: + pass + finally: + cls.__latest_update_time_dict["market_strong"] = time.time() + time.sleep(3) + + @classmethod # 杩愯鎷夊彇浠诲姟 def run_pull_task(cls): def get_bidding_money(): @@ -600,10 +633,11 @@ time.sleep(3) threading.Thread(target=cls.run_limit_up_task, daemon=True).start() + threading.Thread(target=cls.run_market_strong, daemon=True).start() # threading.Thread(target=get_bidding_money, daemon=True).start() # threading.Thread(target=get_market_industry, daemon=True).start() - threading.Thread(target=cls.run_market_jingxuan_in, daemon=True).start() - threading.Thread(target=cls.run_market_jingxuan_out, daemon=True).start() + # threading.Thread(target=cls.run_market_jingxuan_in, daemon=True).start() + # threading.Thread(target=cls.run_market_jingxuan_out, daemon=True).start() @tool.singleton -- Gitblit v1.8.0