From ba52d7ac92a36f413eacaa686f8535e859664ec6 Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期一, 28 八月 2023 09:45:11 +0800 Subject: [PATCH] bug修改 --- third_data/block_info.py | 68 ++++++++++++++++++++++++---------- 1 files changed, 48 insertions(+), 20 deletions(-) diff --git a/third_data/block_info.py b/third_data/block_info.py index 9b2dc17..7682066 100644 --- a/third_data/block_info.py +++ b/third_data/block_info.py @@ -4,10 +4,12 @@ import datetime import constant -import juejin -import tool -from third_data import kpl_util, kpl_data_manager +from utils import tool +from third_data import kpl_util +from third_data.history_k_data_util import HistoryKDatasUtils from third_data.kpl_data_manager import KPLLimitUpDataRecordManager, KPLDataManager + +from third_data import kpl_data_manager __before_block_dict = {} @@ -16,12 +18,21 @@ def __load_before_block(code): if code not in __before_block_dict: - blocks = KPLLimitUpDataRecordManager.get_latest_blocks(code) + blocks = KPLLimitUpDataRecordManager.get_latest_blocks_set(code) if blocks: - blocks = blocks[0].split(',') __before_block_dict[code] = blocks return __before_block_dict.get(code) + + +# 鑾峰彇涔嬪墠鐨勬澘鍧� +def get_before_blocks(code): + return __before_block_dict.get(code) + + +# 鑾峰彇涔嬪墠鐨勪唬鐮�-鏉垮潡瀛楀吀 +def get_before_blocks_dict(): + return __before_block_dict def __get_code_from_code_info(code_info): @@ -32,12 +43,13 @@ # (浠g爜, 鍚嶇О, 棣栨娑ㄥ仠鏃堕棿, 鏈�杩戞定鍋滄椂闂�, 鍑犳澘, 娑ㄥ仠鍘熷洜, 鏉垮潡, 瀹為檯娴侀��, 涓诲姏鍑�棰�) def __get_blocks(code, limit_up_datas, filter=True): blocks = [] - for data in limit_up_datas: - if data[0] == code: - block = data[5] - if block in constant.KPL_INVALID_BLOCKS and filter: - continue - blocks.append(block) + if limit_up_datas: + for data in limit_up_datas: + if data[0] == code: + block = data[5] + if block in constant.KPL_INVALID_BLOCKS and filter: + continue + blocks.append(block) return blocks @@ -57,10 +69,10 @@ if now_day in __blocks_dict: return __blocks_dict[now_day] now_date = datetime.datetime.now() - end_date = juejin.JueJinManager.get_previous_trading_date(tool.get_now_date_str()) + end_date = HistoryKDatasUtils.get_previous_trading_date(tool.get_now_date_str()) start_date = now_date - datetime.timedelta(days=(day_count * 2 + 10)) start_date = start_date.strftime("%Y-%m-%d") - days = juejin.JueJinManager.get_trading_dates(start_date, end_date) + days = HistoryKDatasUtils.get_trading_dates(start_date, end_date) days = days[0 - day_count:] results = KPLLimitUpDataRecordManager.list_blocks_with_day(days) __blocks_dict[now_day] = results @@ -159,7 +171,7 @@ code_ = d[3] limit_up_codes_info_set.add((code_, d[5])) block_codes_set.add(code_) - elif d[3]==code: + elif d[3] == code: limit_up_codes_info_set.add((d[3], d[5])) # 鑾峰彇娑ㄥ仠鐨勯『搴� limit_up_index = -1 @@ -192,12 +204,13 @@ code_ = data[0] break_codes.add(code_) # 缁熻鍥炲皝 - for data in latest_datas: - if data[5] != target_block: - continue - # 鍥炲皝 - if data[2] != data[3]: - re_limit_codes.add(data[0]) + if latest_datas: + for data in latest_datas: + if data[5] != target_block: + continue + # 鍥炲皝 + if data[2] != data[3]: + re_limit_codes.add(data[0]) # 鎺掗櫎鑷繁 break_codes.discard(code) @@ -228,5 +241,20 @@ return fresult +# 鍒濆鍖栨澘鍧楁暟鎹� +def init(): + # 鍔犺浇鏁版嵁鍒板唴瀛樹腑 + kpl_data_manager.get_current_limit_up_data_records(10) + # 鍔犺浇鏈�杩戞暟鎹埌鍐呭瓨涓� + limit_up_datas = kpl_data_manager.KPLDataManager().get_data(kpl_util.KPLDataType.LIMIT_UP) + if limit_up_datas: + kpl_data_manager.KPLLimitUpDataRecordManager.latest_origin_datas = limit_up_datas + + +def init_code(code): + # 鍔犺浇鍘嗗彶娑ㄥ仠鍘熷洜 + __load_before_block(code) + + if __name__ == "__main__": get_info("603133") -- Gitblit v1.8.0