mns-common 1.3.2.6__py3-none-any.whl → 1.3.2.7__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,156 @@
1
+ import sys
2
+ import os
3
+
4
+ import requests
5
+ import pandas as pd
6
+ from loguru import logger
7
+ import json
8
+
9
+
10
+ def all_stock_ticker_data_new(fields, fs) -> pd.DataFrame:
11
+ url = "https://13.push2.eastmoney.com/api/qt/clist/get"
12
+ # url = "https://push2.eastmoney.com/api/qt/clist/get?cb=jQuery112303212778189608789_1645434416300&fid=f62&po=1&pz=6000&pn=1&np=1&fltt=2&invt=2&ut=b2884a393a59ad64002292a3e90d46a5&fs=m%3A0%2Bt%3A6%2Bf%3A!2%2Cm%3A0%2Bt%3A13%2Bf%3A!2%2Cm%3A0%2Bt%3A80%2Bf%3A!2%2Cm%3A1%2Bt%3A2%2Bf%3A!2%2Cm%3A1%2Bt%3A23%2Bf%3A!2%2Cm%3A0%2Bt%3A7%2Bf%3A!2%2Cm%3A1%2Bt%3A3%2Bf%3A!2&fields=f12%2Cf14%2Cf2%2Cf3%2Cf62%2Cf184%2Cf66%2Cf69%2Cf72%2Cf75%2Cf78%2Cf81%2Cf84%2Cf87%2Cf204%2Cf205%2Cf124%2Cf1%2Cf13"
13
+ params = {
14
+ "cb": "jQuery1124046660442520420653_1660036672477",
15
+ "pn": "1",
16
+ "pz": "10000",
17
+ "po": "1",
18
+ "np": "3",
19
+ "ut": " bd1d9ddb04089700cf9c27f6f7426281",
20
+ "fltt": "2",
21
+ "invt": "2",
22
+ "wbp2u": "|0|0|0|web",
23
+ "fid": "f3",
24
+ "fs": fs,
25
+ "fields": fields,
26
+ "_": 1660036672518
27
+ }
28
+ try:
29
+ r = requests.get(url, params)
30
+ data_text = r.text
31
+ begin_index = data_text.index('[')
32
+ end_index = data_text.index(']')
33
+ data_json = data_text[begin_index:end_index + 1]
34
+ data_json = json.loads(data_json)
35
+ if data_json is None:
36
+ return pd.DataFrame()
37
+ return pd.DataFrame(data_json)
38
+ except Exception as e:
39
+ logger.error("获取股票列表,实时行情异常:{}", e)
40
+ return None
41
+
42
+
43
+ # f212 卖1
44
+ # f211 买1
45
+ # f31 买1价格
46
+ # "f32" : 卖1价格
47
+
48
+
49
+ # 获取所有股票实时行情数据 f33,委比
50
+ def get_real_time_quotes_all_stocks():
51
+ stock_ticker_data = all_stock_ticker_data_new(
52
+ "f352,f2,f3,f5,f6,f8,f10,f11,f22,f12,f14,f15,f16,f17,f18,f20,f21,f26,"
53
+ "f33,f34,f35,f62,f66,f69,f72,f100,f184,f211,f212",
54
+ "m:0 t:6,m:0 t:80,m:1 t:2,m:1 t:23,m:0 t:81 s:2048")
55
+
56
+ temp_df = stock_ticker_data.rename(columns={
57
+ "f2": "now_price",
58
+ "f3": "chg",
59
+ "f5": "volume",
60
+ "f6": "amount",
61
+ "f8": "exchange",
62
+ "f10": "quantity_ratio",
63
+ "f22": "up_speed",
64
+ "f11": "up_speed_05",
65
+ "f12": "symbol",
66
+ "f14": "name",
67
+ "f15": "high",
68
+ "f16": "low",
69
+ "f17": "open",
70
+ "f18": "yesterday_price",
71
+ "f20": "total_mv",
72
+ "f21": "flow_mv",
73
+ "f26": "list_date",
74
+ "f33": "wei_bi",
75
+ "f34": "outer_disk",
76
+ "f35": "inner_disk",
77
+ "f62": "today_main_net_inflow",
78
+ "f66": "super_large_order_net_inflow",
79
+ "f69": "super_large_order_net_inflow_ratio",
80
+ "f72": "large_order_net_inflow",
81
+ # "f78": "medium_order_net_inflow",
82
+ # "f84": "small_order_net_inflow",
83
+ "f100": "industry",
84
+ # "f103": "concept",
85
+ "f184": "today_main_net_inflow_ratio",
86
+ "f352": "average_price",
87
+ "f211": "buy_1_num",
88
+ "f212": "sell_1_num"
89
+ })
90
+ temp_df.loc[temp_df['buy_1_num'] == '-', 'buy_1_num'] = 0
91
+ temp_df.loc[temp_df['sell_1_num'] == '-', 'sell_1_num'] = 0
92
+ temp_df.loc[temp_df['up_speed_05'] == '-', 'up_speed_05'] = 0
93
+ temp_df.loc[temp_df['up_speed'] == '-', 'up_speed'] = 0
94
+ temp_df.loc[temp_df['average_price'] == '-', 'average_price'] = 0
95
+ temp_df.loc[temp_df['wei_bi'] == '-', 'wei_bi'] = 0
96
+ temp_df.loc[temp_df['yesterday_price'] == '-', 'yesterday_price'] = 0
97
+ temp_df.loc[temp_df['now_price'] == '-', 'now_price'] = 0
98
+ temp_df.loc[temp_df['chg'] == '-', 'chg'] = 0
99
+ temp_df.loc[temp_df['volume'] == '-', 'volume'] = 0
100
+ temp_df.loc[temp_df['amount'] == '-', 'amount'] = 0
101
+ temp_df.loc[temp_df['exchange'] == '-', 'exchange'] = 0
102
+ temp_df.loc[temp_df['quantity_ratio'] == '-', 'quantity_ratio'] = 0
103
+ temp_df.loc[temp_df['high'] == '-', 'high'] = 0
104
+ temp_df.loc[temp_df['low'] == '-', 'low'] = 0
105
+ temp_df.loc[temp_df['open'] == '-', 'open'] = 0
106
+ temp_df.loc[temp_df['total_mv'] == '-', 'total_mv'] = 0
107
+ temp_df.loc[temp_df['flow_mv'] == '-', 'flow_mv'] = 0
108
+ temp_df.loc[temp_df['inner_disk'] == '-', 'inner_disk'] = 0
109
+ temp_df.loc[temp_df['outer_disk'] == '-', 'outer_disk'] = 0
110
+ temp_df.loc[temp_df['today_main_net_inflow_ratio'] == '-', 'today_main_net_inflow_ratio'] = 0
111
+ temp_df.loc[temp_df['today_main_net_inflow'] == '-', 'today_main_net_inflow'] = 0
112
+ temp_df.loc[temp_df['super_large_order_net_inflow'] == '-', 'super_large_order_net_inflow'] = 0
113
+ temp_df.loc[temp_df['super_large_order_net_inflow_ratio'] == '-', 'super_large_order_net_inflow_ratio'] = 0
114
+ temp_df.loc[temp_df['large_order_net_inflow'] == '-', 'large_order_net_inflow'] = 0
115
+ # temp_df.loc[temp_df['medium_order_net_inflow'] == '-', 'medium_order_net_inflow'] = 0
116
+ # temp_df.loc[temp_df['small_order_net_inflow'] == '-', 'small_order_net_inflow'] = 0
117
+
118
+ temp_df["list_date"] = pd.to_numeric(temp_df["list_date"], errors="coerce")
119
+ temp_df["wei_bi"] = pd.to_numeric(temp_df["wei_bi"], errors="coerce")
120
+ temp_df["average_price"] = pd.to_numeric(temp_df["average_price"], errors="coerce")
121
+ temp_df["yesterday_price"] = pd.to_numeric(temp_df["yesterday_price"], errors="coerce")
122
+ temp_df["now_price"] = pd.to_numeric(temp_df["now_price"], errors="coerce")
123
+ temp_df["chg"] = pd.to_numeric(temp_df["chg"], errors="coerce")
124
+ temp_df["volume"] = pd.to_numeric(temp_df["volume"], errors="coerce")
125
+ temp_df["amount"] = pd.to_numeric(temp_df["amount"], errors="coerce")
126
+ temp_df["exchange"] = pd.to_numeric(temp_df["exchange"], errors="coerce")
127
+ temp_df["quantity_ratio"] = pd.to_numeric(temp_df["quantity_ratio"], errors="coerce")
128
+ temp_df["high"] = pd.to_numeric(temp_df["high"], errors="coerce")
129
+ temp_df["low"] = pd.to_numeric(temp_df["low"], errors="coerce")
130
+ temp_df["open"] = pd.to_numeric(temp_df["open"], errors="coerce")
131
+ temp_df["total_mv"] = pd.to_numeric(temp_df["total_mv"], errors="coerce")
132
+ temp_df["flow_mv"] = pd.to_numeric(temp_df["flow_mv"], errors="coerce")
133
+ temp_df["outer_disk"] = pd.to_numeric(temp_df["outer_disk"], errors="coerce")
134
+ temp_df["inner_disk"] = pd.to_numeric(temp_df["inner_disk"], errors="coerce")
135
+ temp_df["today_main_net_inflow"] = pd.to_numeric(temp_df["today_main_net_inflow"], errors="coerce")
136
+ temp_df["super_large_order_net_inflow"] = pd.to_numeric(temp_df["super_large_order_net_inflow"],
137
+ errors="coerce")
138
+ temp_df["super_large_order_net_inflow_ratio"] = pd.to_numeric(temp_df["super_large_order_net_inflow_ratio"],
139
+ errors="coerce")
140
+ temp_df["large_order_net_inflow"] = pd.to_numeric(temp_df["large_order_net_inflow"],
141
+ errors="coerce")
142
+ # temp_df["medium_order_net_inflow"] = pd.to_numeric(temp_df["medium_order_net_inflow"],
143
+ # errors="coerce")
144
+ # temp_df["small_order_net_inflow"] = pd.to_numeric(temp_df["small_order_net_inflow"], errors="coerce")
145
+
146
+ # 大单比例
147
+ temp_df['large_order_net_inflow_ratio'] = round((temp_df['large_order_net_inflow'] / temp_df['amount']) * 100, 2)
148
+
149
+
150
+ return temp_df
151
+
152
+
153
+ if __name__ == '__main__':
154
+ df = get_real_time_quotes_all_stocks()
155
+ df = df.loc[df['wei_bi'] == 100]
156
+ print(df)
@@ -1,4 +1,4 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mns_common
3
- Version: 1.3.2.6
3
+ Version: 1.3.2.7
4
4
 
@@ -8,13 +8,14 @@ mns_common/api/akshare/stock_zb_pool.py,sha256=ylcVgZTzsD3qz9WaItLtoqTf4t-Ex49MD
8
8
  mns_common/api/akshare/stock_zt_pool_api.py,sha256=_4PG_Wd88S4zweKNwZprwxaMMHBF4OQSB77DGW1l9UQ,1929
9
9
  mns_common/api/akshare/yjyg_sync_api.py,sha256=cvk50_XhJWUqduOiC15SYvQTCQqECt6td_L2Hvnl7Jg,4108
10
10
  mns_common/api/em/__init__.py,sha256=2U9DiKslxsWwLLEcZKjS8UiQPN1QgALvnK3HiJNIZE0,163
11
- mns_common/api/em/east_money_debt_api.py,sha256=lToffwPlS0S05FxZp6QHhLxCJDFAnvorgqjYXDW5p8I,12429
12
- mns_common/api/em/east_money_etf_api.py,sha256=GuFHflQOCbfIdKQawrAFE2TimyLGedne662fBUs4Vr0,11707
13
- mns_common/api/em/east_money_stock_api.py,sha256=kG4a_xcnQMYPkUec74f_7TtpmNb6GPVS23Xgr4Cq2og,8392
11
+ mns_common/api/em/east_money_debt_api.py,sha256=KR5apKUDzVDqfxEaNz3yo3t4edsCww1z7ciWhKkpXxM,13998
12
+ mns_common/api/em/east_money_etf_api.py,sha256=m4WEezBbMJ2GaHTHnanMoElzHKpbKcRr30GTiqI1nY4,13844
13
+ mns_common/api/em/east_money_stock_api.py,sha256=ZNoVKkqLyEFLJGvlhhbW8suTuORdBc8xlsOOLtn4Pq4,9204
14
14
  mns_common/api/em/east_money_stock_api_develop.py,sha256=IijcfCwqzuwd7okAjOnFoWiWSvlRttSg1vGzkDXljeM,9888
15
15
  mns_common/api/em/east_money_stock_gdfx_free_top_10_api.py,sha256=jVy3fNdrkLq3ri7yUwXWt0ItB8LCHzt9CPz91Fj8sPA,9198
16
- mns_common/api/em/east_money_stock_hk_api.py,sha256=DfadhyUEs5tsAjnW7p6FnxBX9BglIB37FQ-7Z3wcVow,9074
17
- mns_common/api/em/east_money_stock_v2_api.py,sha256=Ux9-rW4vY429598_mOcbyupaEJG0gR_AZnqT7mlbL5w,14780
16
+ mns_common/api/em/east_money_stock_hk_api.py,sha256=lbkO_pcUo5s4TeDk8bxN_kYOU80ERkIdeV1e370Psj8,11378
17
+ mns_common/api/em/east_money_stock_us_api.py,sha256=_RqVK3Mzaxym6NZKvKNCn4AoRctSSlZmh9RB2IgExlc,10868
18
+ mns_common/api/em/east_money_stock_v2_api.py,sha256=1fZaY6CzDY4OGFjOsqG0gtfu8DPudowndYVyg2-opZI,9190
18
19
  mns_common/api/em/em_concept_index_api.py,sha256=PP87ES8a_y0o3SKLzBsPrc7DCPI3MBCD-4SmoUUirl0,8285
19
20
  mns_common/api/em/self_choose/__init__.py,sha256=vAy9qYgUgZL9Y0w3BBbqmZ9zES46pPnlJjO2hdtotp0,2673
20
21
  mns_common/api/hk/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
@@ -119,6 +120,7 @@ mns_common/component/zt/zt_common_service_api.py,sha256=6pHRLLJjKcLLBA-xXkAU8SE6
119
120
  mns_common/constant/__init__.py,sha256=2U9DiKslxsWwLLEcZKjS8UiQPN1QgALvnK3HiJNIZE0,163
120
121
  mns_common/constant/black_list_classify_enum.py,sha256=I8U_DcltzYvlWjgn-TFLImgVgPuO0lxMnEJAQJBljdo,3995
121
122
  mns_common/constant/db_name_constant.py,sha256=7ETrYCVtAhl-7y652VTR9gXEyfjT8pLB2PyqgRqcCno,4861
123
+ mns_common/constant/east_money_stock_api.py,sha256=mW0b8sEgkf8WJtars2frOQYzsWgjIl4FDYEwcCcCSZY,7557
122
124
  mns_common/constant/price_enum.py,sha256=nhcPxk0AFdQAp8IsNr5EP9xURLqqJuSl6ljIzTp7Wyo,1093
123
125
  mns_common/constant/redis_msg_constant.py,sha256=fMtI_WbJ2IkMX4qGwvR5MkMO0NqU8XgUUZqQzHIRscU,501
124
126
  mns_common/constant/self_choose_constant.py,sha256=Xnzp9cn5x5_UdqF4gozSDErkzafnbCYBjDH8YpTEU84,777
@@ -135,7 +137,7 @@ mns_common/utils/date_handle_util.py,sha256=P4WJUmoDpo4IoCrt2z4keyr7pqXHKmCZBVod
135
137
  mns_common/utils/db_util.py,sha256=hSmfNAN4vEeEaUva6_cicZEhb2jSnib-Gvk2reke1vc,2590
136
138
  mns_common/utils/file_util.py,sha256=egWu6PenGPRp_ixrNTHKarT4dAnOT6FETR82EHUZJnQ,1042
137
139
  mns_common/utils/ip_util.py,sha256=UTcYfz_uytB__6nlBf7T-izuI7hi4XdB6ET0sJgEel4,969
138
- mns_common-1.3.2.6.dist-info/METADATA,sha256=mWOqVA3f4WclPf7BLPND-TRM90RWfJfhNFGdAq_3z10,61
139
- mns_common-1.3.2.6.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
140
- mns_common-1.3.2.6.dist-info/top_level.txt,sha256=ZC58kAR-8Hvc6U2xhYNBNLAh3mb6sZazbdj5nZpvEkQ,11
141
- mns_common-1.3.2.6.dist-info/RECORD,,
140
+ mns_common-1.3.2.7.dist-info/METADATA,sha256=mmWh7Y-ENNZWDP6E_ptxYLC0TzL_NPTVhjgEU71Si_0,61
141
+ mns_common-1.3.2.7.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
142
+ mns_common-1.3.2.7.dist-info/top_level.txt,sha256=ZC58kAR-8Hvc6U2xhYNBNLAh3mb6sZazbdj5nZpvEkQ,11
143
+ mns_common-1.3.2.7.dist-info/RECORD,,