mns-common 1.3.9.3__py3-none-any.whl → 1.3.9.5__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.
- mns_common/api/akshare/k_line_api.py +1 -80
- mns_common/api/xueqiu/xue_qiu_k_line_api.py +19 -22
- {mns_common-1.3.9.3.dist-info → mns_common-1.3.9.5.dist-info}/METADATA +1 -1
- {mns_common-1.3.9.3.dist-info → mns_common-1.3.9.5.dist-info}/RECORD +6 -6
- {mns_common-1.3.9.3.dist-info → mns_common-1.3.9.5.dist-info}/WHEEL +0 -0
- {mns_common-1.3.9.3.dist-info → mns_common-1.3.9.5.dist-info}/top_level.txt +0 -0
|
@@ -9,89 +9,11 @@ import requests
|
|
|
9
9
|
import pandas as pd
|
|
10
10
|
import mns_common.component.common_service_fun_api as common_service_fun_api
|
|
11
11
|
from datetime import datetime
|
|
12
|
-
from functools import lru_cache
|
|
13
12
|
import numpy as np
|
|
14
13
|
|
|
15
14
|
|
|
16
|
-
@lru_cache(maxsize=None)
|
|
17
|
-
def code_id_map_em() -> dict:
|
|
18
|
-
"""
|
|
19
|
-
东方财富-股票和市场代码
|
|
20
|
-
http://quote.eastmoney.com/center/gridlist.html#hs_a_board
|
|
21
|
-
:return: 股票和市场代码
|
|
22
|
-
:rtype: dict
|
|
23
|
-
"""
|
|
24
|
-
url = "http://80.push2.eastmoney.com/api/qt/clist/get"
|
|
25
|
-
params = {
|
|
26
|
-
"pn": "1",
|
|
27
|
-
"pz": "5000",
|
|
28
|
-
"po": "1",
|
|
29
|
-
"np": "3",
|
|
30
|
-
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
31
|
-
"fltt": "2",
|
|
32
|
-
"invt": "2",
|
|
33
|
-
"fid": "f3",
|
|
34
|
-
"fs": "m:1 t:2,m:1 t:23",
|
|
35
|
-
"fields": "f12",
|
|
36
|
-
"_": "1623833739532",
|
|
37
|
-
}
|
|
38
|
-
r = requests.get(url, params=params)
|
|
39
|
-
data_json = r.json()
|
|
40
|
-
if not data_json["data"]["diff"]:
|
|
41
|
-
return pd.DataFrame()
|
|
42
|
-
temp_df = pd.DataFrame(data_json["data"]["diff"])
|
|
43
|
-
temp_df["market_id"] = 1
|
|
44
|
-
temp_df.columns = ["sh_code", "sh_id"]
|
|
45
|
-
code_id_dict = dict(zip(temp_df["sh_code"], temp_df["sh_id"]))
|
|
46
|
-
params = {
|
|
47
|
-
"pn": "1",
|
|
48
|
-
"pz": "5000",
|
|
49
|
-
"po": "1",
|
|
50
|
-
"np": "3",
|
|
51
|
-
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
52
|
-
"fltt": "2",
|
|
53
|
-
"invt": "2",
|
|
54
|
-
"fid": "f3",
|
|
55
|
-
"fs": "m:0 t:6,m:0 t:80",
|
|
56
|
-
"fields": "f12",
|
|
57
|
-
"_": "1623833739532",
|
|
58
|
-
}
|
|
59
|
-
r = requests.get(url, params=params)
|
|
60
|
-
data_json = r.json()
|
|
61
|
-
if not data_json["data"]["diff"]:
|
|
62
|
-
return pd.DataFrame()
|
|
63
|
-
temp_df_sz = pd.DataFrame(data_json["data"]["diff"])
|
|
64
|
-
temp_df_sz["sz_id"] = 0
|
|
65
|
-
code_id_dict.update(dict(zip(temp_df_sz["f12"], temp_df_sz["sz_id"])))
|
|
66
|
-
now_date = datetime.now()
|
|
67
|
-
now_time = int(now_date.timestamp() * 1000)
|
|
68
|
-
now_time = str(now_time)
|
|
69
|
-
|
|
70
|
-
params = {
|
|
71
|
-
"pn": "1",
|
|
72
|
-
"pz": "5000",
|
|
73
|
-
"po": "1",
|
|
74
|
-
"np": "3",
|
|
75
|
-
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
76
|
-
"fltt": "2",
|
|
77
|
-
"invt": "2",
|
|
78
|
-
"fid": "f3",
|
|
79
|
-
"fs": "m:0 t:81 s:2048",
|
|
80
|
-
"fields": "f12",
|
|
81
|
-
"_": now_time,
|
|
82
|
-
}
|
|
83
|
-
r = requests.get(url, params=params)
|
|
84
|
-
data_json = r.json()
|
|
85
|
-
if not data_json["data"]["diff"]:
|
|
86
|
-
return pd.DataFrame()
|
|
87
|
-
temp_df_sz = pd.DataFrame(data_json["data"]["diff"])
|
|
88
|
-
temp_df_sz["bj_id"] = 0
|
|
89
|
-
code_id_dict.update(dict(zip(temp_df_sz["f12"], temp_df_sz["bj_id"])))
|
|
90
|
-
return code_id_dict
|
|
91
|
-
|
|
92
|
-
|
|
93
15
|
def stock_zh_a_hist(
|
|
94
|
-
symbol: str = "000001",
|
|
16
|
+
symbol: str = "0.000001",
|
|
95
17
|
period: str = 'daily',
|
|
96
18
|
start_date: str = "19700101",
|
|
97
19
|
end_date: str = "22220101",
|
|
@@ -113,7 +35,6 @@ def stock_zh_a_hist(
|
|
|
113
35
|
:return: 每日行情
|
|
114
36
|
:rtype: pandas.DataFrame
|
|
115
37
|
"""
|
|
116
|
-
code_id_dict = code_id_map_em()
|
|
117
38
|
adjust_dict = {"qfq": "1", "hfq": "2", "": "0"}
|
|
118
39
|
period_dict = {'daily': '101', 'weekly': '102', 'monthly': '103'}
|
|
119
40
|
url = "http://push2his.eastmoney.com/api/qt/stock/kline/get"
|
|
@@ -5,7 +5,6 @@ file_path = os.path.abspath(__file__)
|
|
|
5
5
|
end = file_path.index('mns') + 16
|
|
6
6
|
project_path = file_path[0:end]
|
|
7
7
|
sys.path.append(project_path)
|
|
8
|
-
from loguru import logger
|
|
9
8
|
import requests
|
|
10
9
|
import pandas as pd
|
|
11
10
|
|
|
@@ -42,28 +41,26 @@ def get_xue_qiu_k_line(symbol, period, cookie, end_time, hq):
|
|
|
42
41
|
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",
|
|
43
42
|
"cookie": cookie
|
|
44
43
|
}
|
|
45
|
-
try:
|
|
46
|
-
response = requests.get(
|
|
47
|
-
url=url,
|
|
48
|
-
params=params,
|
|
49
|
-
headers=headers
|
|
50
|
-
)
|
|
51
44
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
45
|
+
response = requests.get(
|
|
46
|
+
url=url,
|
|
47
|
+
params=params,
|
|
48
|
+
headers=headers
|
|
49
|
+
)
|
|
50
|
+
|
|
51
|
+
if response.status_code == 200:
|
|
52
|
+
response_data = response.json()
|
|
53
|
+
df = pd.DataFrame(
|
|
54
|
+
data=response_data['data']['item'],
|
|
55
|
+
columns=response_data['data']['column']
|
|
56
|
+
)
|
|
57
|
+
# 处理DataFrame列(秒级时间戳)
|
|
58
|
+
df['str_day'] = pd.to_datetime(df['timestamp'], unit='ms').dt.normalize()
|
|
59
|
+
df["str_day"] = df["str_day"].dt.strftime("%Y-%m-%d")
|
|
60
|
+
return df
|
|
61
|
+
else:
|
|
62
|
+
# 直接抛出带有明确信息的异常
|
|
63
|
+
raise ValueError("调用雪球接口失败")
|
|
67
64
|
|
|
68
65
|
|
|
69
66
|
if __name__ == '__main__':
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
mns_common/__init__.py,sha256=2U9DiKslxsWwLLEcZKjS8UiQPN1QgALvnK3HiJNIZE0,163
|
|
2
2
|
mns_common/api/__init__.py,sha256=2U9DiKslxsWwLLEcZKjS8UiQPN1QgALvnK3HiJNIZE0,163
|
|
3
3
|
mns_common/api/akshare/__init__.py,sha256=xu36nA6MJTauswUWPfKIKH0E-lpOAHTw2TL5QI_6TeY,165
|
|
4
|
-
mns_common/api/akshare/k_line_api.py,sha256=
|
|
4
|
+
mns_common/api/akshare/k_line_api.py,sha256=q2rlBTdyc-8D75Bj6Zf5wvMBgSSJxDeKBxnio7Z91Bk,3762
|
|
5
5
|
mns_common/api/akshare/stock_bid_ask_api.py,sha256=6V42fVfAau3kFD1p4V4O71afU7u5bUqi770mU6bu-m0,3984
|
|
6
6
|
mns_common/api/akshare/stock_dt_pool.py,sha256=sKedOTzqsBZprJHJEr2sRYa8xbeSK7tRenqBE3wOdUc,2245
|
|
7
7
|
mns_common/api/akshare/stock_zb_pool.py,sha256=ylcVgZTzsD3qz9WaItLtoqTf4t-Ex49MDtZUk0xaB5Q,2126
|
|
@@ -71,7 +71,7 @@ mns_common/api/ths/zt/ths_stock_zt_pool_v2_api.py,sha256=eICTYaHJYp2ccsHkeDnkzpJ
|
|
|
71
71
|
mns_common/api/us/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
72
72
|
mns_common/api/us/ths_us_company_info_api.py,sha256=qQjv4F-ovQ2uuu-FlBAnxjvVA7qj9y_x5WZtUoyoEW4,241
|
|
73
73
|
mns_common/api/xueqiu/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
74
|
-
mns_common/api/xueqiu/xue_qiu_k_line_api.py,sha256=
|
|
74
|
+
mns_common/api/xueqiu/xue_qiu_k_line_api.py,sha256=05sq0_II32xUYc_ajY6iAqV0FKWC0n7H48R-rocdqgc,4415
|
|
75
75
|
mns_common/component/__init__.py,sha256=2U9DiKslxsWwLLEcZKjS8UiQPN1QgALvnK3HiJNIZE0,163
|
|
76
76
|
mns_common/component/common_service_fun_api.py,sha256=ZPPqo-ZBwSJ23I_2xXGxXyN6emYrlPqUuBGjA2Cv4gs,6629
|
|
77
77
|
mns_common/component/cache/__init__.py,sha256=2U9DiKslxsWwLLEcZKjS8UiQPN1QgALvnK3HiJNIZE0,163
|
|
@@ -152,7 +152,7 @@ mns_common/utils/date_handle_util.py,sha256=XS-MyA8_7k35LOCFAYOHgVcVkMft_Kc4Wa9U
|
|
|
152
152
|
mns_common/utils/db_util.py,sha256=hSmfNAN4vEeEaUva6_cicZEhb2jSnib-Gvk2reke1vc,2590
|
|
153
153
|
mns_common/utils/file_util.py,sha256=egWu6PenGPRp_ixrNTHKarT4dAnOT6FETR82EHUZJnQ,1042
|
|
154
154
|
mns_common/utils/ip_util.py,sha256=UTcYfz_uytB__6nlBf7T-izuI7hi4XdB6ET0sJgEel4,969
|
|
155
|
-
mns_common-1.3.9.
|
|
156
|
-
mns_common-1.3.9.
|
|
157
|
-
mns_common-1.3.9.
|
|
158
|
-
mns_common-1.3.9.
|
|
155
|
+
mns_common-1.3.9.5.dist-info/METADATA,sha256=6DZl56rzqq3c_HXEF_YoH-1sugm3IjSGv58U7x98WJ4,61
|
|
156
|
+
mns_common-1.3.9.5.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
|
157
|
+
mns_common-1.3.9.5.dist-info/top_level.txt,sha256=ZC58kAR-8Hvc6U2xhYNBNLAh3mb6sZazbdj5nZpvEkQ,11
|
|
158
|
+
mns_common-1.3.9.5.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|