mns-scheduler 1.1.9.6__py3-none-any.whl → 1.1.9.8__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-scheduler might be problematic. Click here for more details.

@@ -76,9 +76,22 @@ def update_one_concept_relevance_industry(concept_code):
76
76
  ths_stock_concept_detail_df['first_relevance_industry'] = first_relevance_industry
77
77
  ths_stock_concept_detail_df['second_relevance_industry'] = second_relevance_industry
78
78
 
79
- mongodb_util.save_mongo(ths_concept_list_one_df, db_name_constant.THS_CONCEPT_LIST)
79
+ new_values_list = {"$set": {"first_relevance_industry": first_relevance_industry,
80
+ "second_relevance_industry": second_relevance_industry,
81
+ "first_relevance_industry_number": first_relevance_industry_number,
82
+ "second_relevance_industry_number": second_relevance_industry_number,
80
83
 
81
- mongodb_util.save_mongo(ths_stock_concept_detail_df, db_name_constant.THS_STOCK_CONCEPT_DETAIL)
84
+ }}
85
+
86
+ update_query = {"symbol": concept_code}
87
+ mongodb_util.update_one_query(update_query, new_values_list, db_name_constant.THS_CONCEPT_LIST)
88
+
89
+ new_values_detail = {"$set": {"first_relevance_industry": first_relevance_industry,
90
+ "second_relevance_industry": second_relevance_industry
91
+
92
+ }}
93
+ update_query_detail = {"concept_code": concept_code}
94
+ mongodb_util.update_one_query(update_query_detail, new_values_detail, db_name_constant.THS_STOCK_CONCEPT_DETAIL)
82
95
 
83
96
 
84
97
  # 更新空名字
@@ -38,15 +38,6 @@ def push_msg_to_we_chat_and_redis(concept_code, concept_name, url):
38
38
  ths_concept_clean_api.update_ths_concept_info()
39
39
 
40
40
 
41
- # 保存新概念信息到数据库
42
- def save_ths_concept_list(concept_code, concept_name, str_day, str_now_time):
43
- url = 'http://q.10jqka.com.cn/thshy/detail/code/' + str(concept_code)
44
- ths_concept_list = pd.DataFrame([
45
- [concept_code, concept_code, concept_name, str_day, url, str_now_time, True, True, 1, ''],
46
- ], columns=['_id', 'symbol', 'name', 'str_day', 'url', 'str_now_time', 'success', 'valid', 'grade', 'remark'])
47
- mongodb_util.save_mongo(ths_concept_list, 'ths_concept_list')
48
-
49
-
50
41
  # 保存新概念详细信息到数据库
51
42
  def save_ths_concept_detail(new_concept_symbol_df,
52
43
  concept_name, str_day,
@@ -136,7 +127,7 @@ def save_ths_concept_detail(new_concept_symbol_df,
136
127
  query_detail = {"concept_code": int(concept_code)}
137
128
  exist_concept_detail = mongodb_util.find_query_data(db_name_constant.THS_STOCK_CONCEPT_DETAIL, query_detail)
138
129
  # 更新入选理由
139
- update_long_short(new_concept_symbol_df)
130
+ update_long_short(new_concept_symbol_df, exist_concept_detail)
140
131
 
141
132
  if exist_concept_detail is None or exist_concept_detail.shape[0] == 0:
142
133
  new_concept_symbol_df['grade'] = 1
@@ -169,7 +160,7 @@ def save_ths_concept_detail(new_concept_symbol_df,
169
160
 
170
161
 
171
162
  # 更新入选理由
172
- def update_long_short(new_concept_symbol_df):
163
+ def update_long_short(new_concept_symbol_df, exist_concept_detail):
173
164
  if data_frame_util.is_empty(new_concept_symbol_df):
174
165
  return None
175
166
  for new_concept_one in new_concept_symbol_df.itertuples():
@@ -180,8 +171,22 @@ def update_long_short(new_concept_symbol_df):
180
171
  mongodb_util.update_many(query, new_values, db_name_constant.THS_STOCK_CONCEPT_DETAIL_APP)
181
172
  except BaseException as e:
182
173
  logger.error("更新入选理由异常:{}", e)
183
-
184
- # 更新公司表信息 todo 清空cache 公司表中 common_service_fun_api.py get_company_info_industry
174
+ # 更新已经被删除概念的股票
175
+ update_delete_concept_symbol(list(new_concept_symbol_df['concept_code'])[0], new_concept_symbol_df,
176
+ exist_concept_detail)
177
+ # 更新公司表信息 todo 清空cache 公司表中 common_service_fun_api.py get_company_info_industry
178
+
179
+
180
+ ## 更新已经被删除这个概念的股票
181
+ def update_delete_concept_symbol(concept_code, new_concept_symbol_df, exist_concept_detail):
182
+ delete_concept_symbol_df = exist_concept_detail.loc[
183
+ ~(exist_concept_detail['symbol'].isin(list(new_concept_symbol_df['symbol'])))]
184
+
185
+ if data_frame_util.is_not_empty(delete_concept_symbol_df):
186
+ new_values = {"$set": {"grade": 0}}
187
+ query = {'symbol': {"$in": list(delete_concept_symbol_df['symbol'])}, 'concept_code': concept_code}
188
+ mongodb_util.update_many(query, new_values, db_name_constant.THS_STOCK_CONCEPT_DETAIL)
189
+ mongodb_util.update_many(query, new_values, db_name_constant.THS_STOCK_CONCEPT_DETAIL_APP)
185
190
 
186
191
 
187
192
  def update_company_info(new_concept_symbol_df):
@@ -218,7 +218,7 @@ def sync_ths_concept_detail_to_db(concept_code, concept_name):
218
218
 
219
219
 
220
220
  if __name__ == '__main__':
221
- sync_ths_concept_detail_to_db('886084', '光纤概念')
221
+ sync_ths_concept_detail_to_db('885740', '债转股')
222
222
  # real_time_quotes_all_stocks_df = east_money_stock_api.get_real_time_quotes_all_stocks()
223
223
  # get_ths_concept_detail_by_explain('886084', real_time_quotes_all_stocks_df)
224
224
  # get_ths_concept_detail_from_web('886084', real_time_quotes_all_stocks_df)
@@ -79,8 +79,9 @@ def sync_ths_concept_new_index_from_app():
79
79
  'remark': ''
80
80
  }
81
81
  diff_one_df = pd.DataFrame(new_concept_one, index=[1])
82
+ # 保存新增概念信息
82
83
  mongodb_util.save_mongo(diff_one_df, db_name_constant.THS_CONCEPT_LIST)
83
- # 新增概念信息处理
84
+ # 新增概念信息处理 推送到微信
84
85
  ths_concept_sync_common_api.push_msg_to_we_chat_and_redis(concept_code, concept_name,
85
86
  url)
86
87
  # 同步概念详情到db
@@ -1,4 +1,4 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mns-scheduler
3
- Version: 1.1.9.6
3
+ Version: 1.1.9.8
4
4
 
@@ -20,15 +20,15 @@ mns_scheduler/company_info/remark/company_remark_info_sync.py,sha256=hzQ8uBK4-od
20
20
  mns_scheduler/concept/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
21
21
  mns_scheduler/concept/clean/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
22
22
  mns_scheduler/concept/clean/kpl_concept_clean_api.py,sha256=xxIIgrXLI6xLf10t4unJa7aMB_QeKeki1HJVeXsntkY,4512
23
- mns_scheduler/concept/clean/ths_concept_clean_api.py,sha256=Q__cpjyT4IoXKhoDg0l_k4E_9lDY1LWRBcQJUwOC_ds,5955
23
+ mns_scheduler/concept/clean/ths_concept_clean_api.py,sha256=iUj9857-6VxEnPNGOjP3NIj-AW1WscsVZJ7T0l6sQ-M,6726
24
24
  mns_scheduler/concept/ths/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
25
25
  mns_scheduler/concept/ths/common/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
26
- mns_scheduler/concept/ths/common/ths_concept_sync_common_api.py,sha256=74NNY88KkOxW2OZvsIBf6uRHcQ7ELbEmbqA33ffPx8s,9784
26
+ mns_scheduler/concept/ths/common/ths_concept_sync_common_api.py,sha256=OgYueBEL8V7UB1MCv4Y2GzYaDGt6AvQOP3FkGUH_UfA,10217
27
27
  mns_scheduler/concept/ths/common/ths_concept_update_common_api.py,sha256=4BQT3A9t-nDIyCpILgRZF7ZOgK1oabp-gJl5nyWvKWc,4418
28
28
  mns_scheduler/concept/ths/detaill/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
- mns_scheduler/concept/ths/detaill/ths_concept_detail_api.py,sha256=DND0wPAbxXSSu8D9dJe6FaamAnnDftDMfLc9H6UmmSg,10885
29
+ mns_scheduler/concept/ths/detaill/ths_concept_detail_api.py,sha256=_azUXNzALQ4I9zHDERYZK7qqMZHxLC8uiSVSEa5v0sI,10882
30
30
  mns_scheduler/concept/ths/sync_new_index/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
31
- mns_scheduler/concept/ths/sync_new_index/sync_ths_concept_new_index_api.py,sha256=_F7U11SDfOJuZq7WxL62Jv0X4meDNIhJpeI4CWTSet4,7863
31
+ mns_scheduler/concept/ths/sync_new_index/sync_ths_concept_new_index_api.py,sha256=wllTGr3HfP4HSg776I5v6XcMGZMrunSTJCmWwTnT1VU,7923
32
32
  mns_scheduler/concept/ths/update_concept_info/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
33
33
  mns_scheduler/concept/ths/update_concept_info/sync_one_concept_all_symbols_api.py,sha256=wwuLfjj9AnFcHP-oQPC5AhpwgZ8IsPiNUh-Z6swcngA,1380
34
34
  mns_scheduler/concept/ths/update_concept_info/sync_one_symbol_all_concepts_api.py,sha256=eWAgszLtmKcC9kF3Y00cPbT9A379_RLqWSm-wr-9bqQ,9406
@@ -142,7 +142,7 @@ mns_scheduler/zt/zt_pool/ths_zt_pool_sync_api.py,sha256=Sy39T-yFwLSIIoSZqQzS-6-W
142
142
  mns_scheduler/zt/zt_pool/update_null_zt_reason_api.py,sha256=OuklSKUhZMj1aKcwDLpZilKIqFbHY3hvvIuA_UFnPqA,2135
143
143
  mns_scheduler/zz_task/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
144
144
  mns_scheduler/zz_task/data_sync_task.py,sha256=b-hv4OBJr9qsmhtCA3k88Odj2WGThuLrn0NkvKIgx0o,21195
145
- mns_scheduler-1.1.9.6.dist-info/METADATA,sha256=ytHoXpI4sgUFIR22YPPIFtKfhXeiWCkMt484Eper9hY,64
146
- mns_scheduler-1.1.9.6.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
147
- mns_scheduler-1.1.9.6.dist-info/top_level.txt,sha256=PXQDFBGR1pWmsUbH5yiLAh71P5HZODTRED0zJ8CCgOc,14
148
- mns_scheduler-1.1.9.6.dist-info/RECORD,,
145
+ mns_scheduler-1.1.9.8.dist-info/METADATA,sha256=vAvCBlzE6tgyLpqQgJYUGA6iAVFFdQLQ311WNLs2p6Q,64
146
+ mns_scheduler-1.1.9.8.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
147
+ mns_scheduler-1.1.9.8.dist-info/top_level.txt,sha256=PXQDFBGR1pWmsUbH5yiLAh71P5HZODTRED0zJ8CCgOc,14
148
+ mns_scheduler-1.1.9.8.dist-info/RECORD,,