mns-common 1.3.5.5__py3-none-any.whl → 1.3.5.6__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of mns-common might be problematic. Click here for more details.

@@ -0,0 +1,7 @@
1
+ import sys
2
+ import os
3
+
4
+ file_path = os.path.abspath(__file__)
5
+ end = file_path.index('mns') + 16
6
+ project_path = file_path[0:end]
7
+ sys.path.append(project_path)
@@ -0,0 +1,97 @@
1
+ import sys
2
+ import os
3
+
4
+ file_path = os.path.abspath(__file__)
5
+ end = file_path.index('mns') + 16
6
+ project_path = file_path[0:end]
7
+ sys.path.append(project_path)
8
+
9
+ import datetime
10
+ import mns_common.utils.date_handle_util as date_util
11
+ from mns_common.db.MongodbUtil import MongodbUtil
12
+ import mns_common.constant.db_name_constant as db_name_constant
13
+ import mns_common.utils.cmd_util as cmd_util
14
+ import mns_common.utils.data_frame_util as data_frame_util
15
+ import time
16
+ from loguru import logger
17
+
18
+ mongodb_util = MongodbUtil('27017')
19
+ REAL_TIME_SCHEDULER_NAME = "realtime_quotes_now_sync"
20
+ # 实时同步 bat
21
+ REAL_TIME_TASK_NAME_PATH = 'H:\\real_time_task.bat'
22
+
23
+
24
+ # 获取同步任务pid
25
+ def get_real_time_quotes_task(all_cmd_processes):
26
+ return all_cmd_processes[
27
+ (all_cmd_processes['total_info'].str.contains(REAL_TIME_SCHEDULER_NAME, case=False, na=False))
28
+ | (all_cmd_processes['total_info'].str.contains(REAL_TIME_SCHEDULER_NAME, case=False, na=False))]
29
+
30
+
31
+ # 关闭实时行情任务
32
+ def real_time_sync_task_close():
33
+ all_cmd_processes = cmd_util.get_all_process()
34
+ if data_frame_util.is_empty(all_cmd_processes):
35
+ return False
36
+ all_cmd_processes_real_time_task = get_real_time_quotes_task(all_cmd_processes)
37
+ if data_frame_util.is_empty(all_cmd_processes_real_time_task):
38
+ return False
39
+ for match_task_one in all_cmd_processes_real_time_task.itertuples():
40
+ try:
41
+ processes_pid = match_task_one.process_pid
42
+ # 关闭当前进程
43
+ cmd_util.kill_process_by_pid(processes_pid)
44
+ except BaseException as e:
45
+ logger.error("关闭实时行情任务异常:{}", e)
46
+
47
+
48
+ # 重开定时任务同步
49
+ def real_time_sync_task_open():
50
+ all_cmd_processes = cmd_util.get_all_process()
51
+ if data_frame_util.is_empty(all_cmd_processes):
52
+ return False
53
+ all_cmd_processes_real_time_task = get_real_time_quotes_task(all_cmd_processes)
54
+ if data_frame_util.is_empty(all_cmd_processes_real_time_task):
55
+ # 重开定时任务
56
+ cmd_util.open_bat_file(REAL_TIME_TASK_NAME_PATH)
57
+ # 防止太快重开多个
58
+ time.sleep(3)
59
+
60
+
61
+ def query_data_exist(str_day):
62
+ col_name = db_name_constant.REAL_TIME_QUOTES_NOW + '_' + str_day
63
+ query = {'symbol': '000001'}
64
+ return mongodb_util.exist_data_query(col_name, query)
65
+
66
+
67
+ def exist_sync_task():
68
+ all_cmd_processes = cmd_util.get_all_process()
69
+ if data_frame_util.is_empty(all_cmd_processes):
70
+ return False
71
+ all_cmd_processes_real_time_task = get_real_time_quotes_task(all_cmd_processes)
72
+ if data_frame_util.is_empty(all_cmd_processes_real_time_task):
73
+ return False
74
+ else:
75
+ return True
76
+
77
+
78
+ def check_data_sync_task_status():
79
+ now_date = datetime.datetime.now()
80
+ str_day = now_date.strftime('%Y-%m-%d')
81
+ while True:
82
+ if bool(date_util.is_trade_time(now_date)):
83
+ if bool(1 - query_data_exist(str_day)) or bool(1 - exist_sync_task()):
84
+ real_time_sync_task_open()
85
+ time.sleep(2)
86
+ elif bool(date_util.is_no_trade_time(now_date)):
87
+ break
88
+ else:
89
+ time.sleep(5)
90
+
91
+
92
+ if __name__ == '__main__':
93
+ # check_data_sync_task_status()
94
+ d = query_data_exist('2025-03-27')
95
+ print(d)
96
+ s = exist_sync_task()
97
+ print(s)
@@ -1,4 +1,4 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mns-common
3
- Version: 1.3.5.5
3
+ Version: 1.3.5.6
4
4
 
@@ -111,6 +111,8 @@ mns_common/component/redis_msg/redis_msg_publish_service.py,sha256=jcNEfQpARCPyl
111
111
  mns_common/component/self_choose/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
112
112
  mns_common/component/self_choose/black_list_service_api.py,sha256=BUySMNHDM3OzXe3g7WGola8_yGZ0ub_fjHj7e6-eB7s,1993
113
113
  mns_common/component/self_choose/self_choose_service_api.py,sha256=v-ThYn5OMva-ciawOFaGi_joxDzLp5HYUHuIP7wz5Z8,1456
114
+ mns_common/component/task/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
115
+ mns_common/component/task/real_time_data_sync_check.py,sha256=hvsciFQ5k-RGM0QONBmIHlT_rr6_7ruVltl2rvE27LA,3379
114
116
  mns_common/component/tfp/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
115
117
  mns_common/component/tfp/stock_tfp_api.py,sha256=iYCBA4DjZZ1ioDKuB8z_uUEuhL0eWPY7K9QkQl9yrik,2135
116
118
  mns_common/component/trade_date/__init__.py,sha256=2U9DiKslxsWwLLEcZKjS8UiQPN1QgALvnK3HiJNIZE0,163
@@ -138,7 +140,7 @@ mns_common/utils/date_handle_util.py,sha256=XS-MyA8_7k35LOCFAYOHgVcVkMft_Kc4Wa9U
138
140
  mns_common/utils/db_util.py,sha256=hSmfNAN4vEeEaUva6_cicZEhb2jSnib-Gvk2reke1vc,2590
139
141
  mns_common/utils/file_util.py,sha256=egWu6PenGPRp_ixrNTHKarT4dAnOT6FETR82EHUZJnQ,1042
140
142
  mns_common/utils/ip_util.py,sha256=UTcYfz_uytB__6nlBf7T-izuI7hi4XdB6ET0sJgEel4,969
141
- mns_common-1.3.5.5.dist-info/METADATA,sha256=NsLQHcIv_KgmCAI9su1AxWmE7mNvqWIBw_8BBPeul5s,61
142
- mns_common-1.3.5.5.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
143
- mns_common-1.3.5.5.dist-info/top_level.txt,sha256=ZC58kAR-8Hvc6U2xhYNBNLAh3mb6sZazbdj5nZpvEkQ,11
144
- mns_common-1.3.5.5.dist-info/RECORD,,
143
+ mns_common-1.3.5.6.dist-info/METADATA,sha256=jGB6eDRU4ofuSWrUX-8hmqgGoPqGeLIrV1pCu5eRdaQ,61
144
+ mns_common-1.3.5.6.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
145
+ mns_common-1.3.5.6.dist-info/top_level.txt,sha256=ZC58kAR-8Hvc6U2xhYNBNLAh3mb6sZazbdj5nZpvEkQ,11
146
+ mns_common-1.3.5.6.dist-info/RECORD,,