From 92cb2dd75ea37b64b174f42ddd0b5b17d6a4634a Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期四, 16 二月 2023 16:04:11 +0800 Subject: [PATCH] H撤策略优化,新增热门板块爬取,新增windows截图工具 --- trade/trade_gui.py | 27 +++++++++++++++++++++++++-- 1 files changed, 25 insertions(+), 2 deletions(-) diff --git a/trade/trade_gui.py b/trade/trade_gui.py index e2f96c5..8139673 100644 --- a/trade/trade_gui.py +++ b/trade/trade_gui.py @@ -3,6 +3,7 @@ """ import array +import logging import threading import time import random @@ -760,16 +761,23 @@ # 鑾峰彇鍙敤鐨勭獥鍙� win = cls.__get_available_win() if win is None: + logger_buy_win_distibute.error(f"鏃犲彲鐢ㄧ獥鍙o細{code}") raise Exception("绐楀彛宸茬粡鍒嗛厤瀹屾瘯锛屾棤鍙敤绐楀彛") # 淇濆瓨绐楀彛鍒嗛厤淇℃伅 cls.__save_code_win(code, win) # 璁剧疆浠g爜澶氳瘯鍑犳 + is_success = False for i in range(0, 3): THSGuiUtil.set_buy_window_code(cls.get_trade_win(win), code) time.sleep(0.5) code_name_win = cls.__get_code_name(win) if code_name == code_name_win: + is_success = True break + if is_success: + logger_buy_win_distibute.info(f"鏂板垎閰嶇獥鍙f垚鍔燂細{code}-{win}") + else: + logger_buy_win_distibute.info(f"鏂板垎閰嶇獥鍙eけ璐ワ細{code}-{win}") return win # 鍒犻櫎浠g爜绐楀彛鍒嗛厤 @@ -793,6 +801,18 @@ cls.__del_code_win(code) return None return win + + # 鑾峰彇宸插垎閰嶇殑浜ゆ槗妗嗕俊鎭� + @classmethod + def get_distributed_code_wins(cls): + key = "buywin_distribute-*" + keys = cls.__get_redis().keys(key) + results = [] + for k in keys: + code = k.split("-")[-1] + win = cls.__get_redis().get(k) + results.append((code, win)) + return results # 鑾峰彇浠g爜鍚嶇О @classmethod @@ -846,8 +866,11 @@ if name_codes.get(code_name) != code: cls.cancel_distribute_win_for_code(code) continue - win = cls.distribute_win_for_code(code, gpcode_manager.get_code_name(code)) - print("鍒嗛厤鐨勭獥鍙�:", win, THSGuiUtil.is_win_exist(win)) + try: + win = cls.distribute_win_for_code(code, gpcode_manager.get_code_name(code)) + print("鍒嗛厤鐨勭獥鍙�:", win, THSGuiUtil.is_win_exist(win)) + except Exception as e: + logging.exception(e) class GUITest: -- Gitblit v1.8.0