akshare 1.14.61__py3-none-any.whl → 1.14.63__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 akshare might be problematic. Click here for more details.
- akshare/__init__.py +4 -1
- akshare/futures/cot.py +1 -1
- akshare/futures/futures_hq_sina.py +3 -2
- akshare/futures_derivative/futures_other_index_nh.py +43 -44
- akshare/spot/spot_sge.py +61 -9
- akshare/stock_feature/stock_ztb_em.py +10 -2
- {akshare-1.14.61.dist-info → akshare-1.14.63.dist-info}/METADATA +1 -1
- {akshare-1.14.61.dist-info → akshare-1.14.63.dist-info}/RECORD +11 -11
- {akshare-1.14.61.dist-info → akshare-1.14.63.dist-info}/WHEEL +1 -1
- {akshare-1.14.61.dist-info → akshare-1.14.63.dist-info}/LICENSE +0 -0
- {akshare-1.14.61.dist-info → akshare-1.14.63.dist-info}/top_level.txt +0 -0
akshare/__init__.py
CHANGED
|
@@ -2872,9 +2872,11 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
|
|
|
2872
2872
|
1.14.59 fix: fix macro_cnbs interface
|
|
2873
2873
|
1.14.60 fix: fix bond_zh_cov_info_ths interface
|
|
2874
2874
|
1.14.61 fix: fix stock_fund_flow_individual interface
|
|
2875
|
+
1.14.62 fix: fix stock_zt_pool_em interface
|
|
2876
|
+
1.14.63 add: add spot_quotations_sge interface
|
|
2875
2877
|
"""
|
|
2876
2878
|
|
|
2877
|
-
__version__ = "1.14.
|
|
2879
|
+
__version__ = "1.14.63"
|
|
2878
2880
|
__author__ = "AKFamily"
|
|
2879
2881
|
|
|
2880
2882
|
import sys
|
|
@@ -3562,6 +3564,7 @@ from akshare.spot.spot_sge import (
|
|
|
3562
3564
|
spot_symbol_table_sge,
|
|
3563
3565
|
spot_silver_benchmark_sge,
|
|
3564
3566
|
spot_golden_benchmark_sge,
|
|
3567
|
+
spot_quotations_sge,
|
|
3565
3568
|
)
|
|
3566
3569
|
|
|
3567
3570
|
"""
|
akshare/futures/cot.py
CHANGED
|
@@ -1371,7 +1371,7 @@ if __name__ == "__main__":
|
|
|
1371
1371
|
print(futures_dce_position_rank_other_df)
|
|
1372
1372
|
|
|
1373
1373
|
# 广州期货交易所
|
|
1374
|
-
futures_gfex_position_rank_df = futures_gfex_position_rank(date="
|
|
1374
|
+
futures_gfex_position_rank_df = futures_gfex_position_rank(date="20240805")
|
|
1375
1375
|
print(futures_gfex_position_rank_df)
|
|
1376
1376
|
|
|
1377
1377
|
# 总接口
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
2
|
# -*- coding:utf-8 -*-
|
|
3
3
|
"""
|
|
4
|
-
Date: 2024/
|
|
4
|
+
Date: 2024/8/21 17:00
|
|
5
5
|
Desc: 新浪财经-外盘期货
|
|
6
6
|
https://finance.sina.com.cn/money/future/hf.html
|
|
7
7
|
"""
|
|
@@ -129,7 +129,8 @@ def futures_foreign_commodity_realtime(symbol: Union[str, List[str]]) -> pd.Data
|
|
|
129
129
|
"Sec-Fetch-Dest": "script",
|
|
130
130
|
"Sec-Fetch-Mode": "no-cors",
|
|
131
131
|
"Sec-Fetch-Site": "cross-site",
|
|
132
|
-
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)
|
|
132
|
+
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
|
|
133
|
+
"Chrome/97.0.4692.71 Safari/537.36",
|
|
133
134
|
}
|
|
134
135
|
r = requests.get(url, headers=headers)
|
|
135
136
|
data_text = r.text
|
|
@@ -10,11 +10,14 @@ https://www.nanhua.net/nhzc/varietychange.html
|
|
|
10
10
|
南华期货-相关系数矩阵
|
|
11
11
|
https://www.nanhua.net/nhzc/correltable.html
|
|
12
12
|
"""
|
|
13
|
+
|
|
13
14
|
import pandas as pd
|
|
14
15
|
import requests
|
|
15
16
|
|
|
16
17
|
|
|
17
|
-
def futures_board_index_nh(
|
|
18
|
+
def futures_board_index_nh(
|
|
19
|
+
start_date: str = "20231110", end_date: str = "20231116"
|
|
20
|
+
) -> pd.DataFrame:
|
|
18
21
|
"""
|
|
19
22
|
南华期货-市场涨跌-板块指数涨跌
|
|
20
23
|
https://www.nanhua.net/nhzc/platechange.html
|
|
@@ -27,42 +30,40 @@ def futures_board_index_nh(start_date: str = "20231110", end_date: str = "202311
|
|
|
27
30
|
"""
|
|
28
31
|
# 获取 start_date 的数据
|
|
29
32
|
url = f"https://www.nanhua.net/ianalysis/plate/{start_date[:4]}/{start_date[4:6]}/{start_date}.json"
|
|
30
|
-
params = {
|
|
31
|
-
't': '1649920913503'
|
|
32
|
-
}
|
|
33
|
+
params = {"t": "1649920913503"}
|
|
33
34
|
r = requests.get(url, params=params)
|
|
34
35
|
start_df = pd.DataFrame(r.json())
|
|
35
36
|
start_df.columns = [
|
|
36
|
-
|
|
37
|
-
|
|
37
|
+
"name",
|
|
38
|
+
"code",
|
|
38
39
|
start_date,
|
|
39
40
|
]
|
|
40
41
|
|
|
41
42
|
# 获取 end_date 的数据
|
|
42
43
|
url = f"https://www.nanhua.net/ianalysis/plate/{end_date[:4]}/{end_date[4:6]}/{end_date}.json"
|
|
43
|
-
params = {
|
|
44
|
-
't': '1649920913503'
|
|
45
|
-
}
|
|
44
|
+
params = {"t": "1649920913503"}
|
|
46
45
|
r = requests.get(url, params=params)
|
|
47
46
|
end_df = pd.DataFrame(r.json())
|
|
48
47
|
end_df.columns = [
|
|
49
|
-
|
|
50
|
-
|
|
48
|
+
"name",
|
|
49
|
+
"code",
|
|
51
50
|
end_date,
|
|
52
51
|
]
|
|
53
52
|
end_df.reset_index(inplace=True, drop=True)
|
|
54
53
|
|
|
55
54
|
# 计算数据
|
|
56
|
-
start_df = start_df.merge(end_df, on=[
|
|
55
|
+
start_df = start_df.merge(end_df, on=["name", "code"], how="inner")
|
|
57
56
|
# 去除异常数据 IF
|
|
58
|
-
start_df = start_df[start_df[
|
|
59
|
-
start_df[
|
|
60
|
-
temp_df = start_df[[
|
|
57
|
+
start_df = start_df[start_df["code"] != "IF"]
|
|
58
|
+
start_df["return"] = start_df[end_date] / start_df[start_date] - 1
|
|
59
|
+
temp_df = start_df[["name", "return"]]
|
|
61
60
|
|
|
62
61
|
return temp_df
|
|
63
62
|
|
|
64
63
|
|
|
65
|
-
def futures_variety_index_nh(
|
|
64
|
+
def futures_variety_index_nh(
|
|
65
|
+
start_date: str = "20231110", end_date: str = "20231116"
|
|
66
|
+
) -> pd.DataFrame:
|
|
66
67
|
"""
|
|
67
68
|
南华期货-市场涨跌-品种指数涨跌
|
|
68
69
|
https://www.nanhua.net/nhzc/varietychange.html
|
|
@@ -74,35 +75,31 @@ def futures_variety_index_nh(start_date: str = "20231110", end_date: str = "2023
|
|
|
74
75
|
:rtype: pandas.DataFrame
|
|
75
76
|
"""
|
|
76
77
|
url = f"https://www.nanhua.net/ianalysis/variety/{start_date[:4]}/{start_date[4:6]}/{start_date}.json"
|
|
77
|
-
params = {
|
|
78
|
-
't': '1649920913503'
|
|
79
|
-
}
|
|
78
|
+
params = {"t": "1649920913503"}
|
|
80
79
|
r = requests.get(url, params=params)
|
|
81
80
|
start_df = pd.DataFrame(r.json())
|
|
82
81
|
start_df.columns = [
|
|
83
|
-
|
|
84
|
-
|
|
82
|
+
"name",
|
|
83
|
+
"code",
|
|
85
84
|
start_date,
|
|
86
85
|
]
|
|
87
86
|
|
|
88
87
|
url = f"http://www.nanhua.net/ianalysis/variety/{end_date[:4]}/{end_date[4:6]}/{end_date}.json"
|
|
89
|
-
params = {
|
|
90
|
-
't': '1649920913503'
|
|
91
|
-
}
|
|
88
|
+
params = {"t": "1649920913503"}
|
|
92
89
|
r = requests.get(url, params=params)
|
|
93
90
|
end_df = pd.DataFrame(r.json())
|
|
94
91
|
end_df.columns = [
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
92
|
+
"name",
|
|
93
|
+
"code",
|
|
94
|
+
"end_date",
|
|
98
95
|
]
|
|
99
|
-
start_df[end_date] = end_df[
|
|
96
|
+
start_df[end_date] = end_df["end_date"]
|
|
100
97
|
|
|
101
|
-
start_df[
|
|
102
|
-
start_df[
|
|
98
|
+
start_df["gap"] = start_df[end_date] - start_df[start_date]
|
|
99
|
+
start_df["return"] = start_df["gap"] / start_df[start_date]
|
|
103
100
|
|
|
104
101
|
temp_df = start_df
|
|
105
|
-
temp_df = temp_df[[
|
|
102
|
+
temp_df = temp_df[["name", "return"]]
|
|
106
103
|
return temp_df
|
|
107
104
|
|
|
108
105
|
|
|
@@ -118,28 +115,30 @@ def futures_correlation_nh(date: str = "20231110", period: str = "20") -> pd.Dat
|
|
|
118
115
|
:rtype: pandas.DataFrame
|
|
119
116
|
"""
|
|
120
117
|
url = f"https://www.nanhua.net/ianalysis/correl/{period}/{date[:4]}/{date[4:6]}/{date}.json"
|
|
121
|
-
params = {
|
|
122
|
-
't': '1649920913503'
|
|
123
|
-
}
|
|
118
|
+
params = {"t": "1649920913503"}
|
|
124
119
|
r = requests.get(url, params=params)
|
|
125
120
|
temp_df = pd.DataFrame(r.json())
|
|
126
121
|
temp_df.columns = [
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
122
|
+
"品种代码1",
|
|
123
|
+
"品种名称1",
|
|
124
|
+
"品种代码2",
|
|
125
|
+
"品种名称2",
|
|
126
|
+
"相关系数",
|
|
132
127
|
]
|
|
133
|
-
temp_df[
|
|
128
|
+
temp_df["相关系数"] = pd.to_numeric(temp_df["相关系数"], errors="coerce")
|
|
134
129
|
return temp_df
|
|
135
130
|
|
|
136
131
|
|
|
137
|
-
if __name__ ==
|
|
138
|
-
futures_board_index_nh_df = futures_board_index_nh(
|
|
132
|
+
if __name__ == "__main__":
|
|
133
|
+
futures_board_index_nh_df = futures_board_index_nh(
|
|
134
|
+
start_date="20230103", end_date="20231201"
|
|
135
|
+
)
|
|
139
136
|
print(futures_board_index_nh_df)
|
|
140
137
|
|
|
141
|
-
futures_variety_index_nh_df = futures_variety_index_nh(
|
|
138
|
+
futures_variety_index_nh_df = futures_variety_index_nh(
|
|
139
|
+
start_date="20231110", end_date="20231116"
|
|
140
|
+
)
|
|
142
141
|
print(futures_variety_index_nh_df)
|
|
143
142
|
|
|
144
|
-
futures_correlation_nh_df = futures_correlation_nh(date="
|
|
143
|
+
futures_correlation_nh_df = futures_correlation_nh(date="20240816", period="20")
|
|
145
144
|
print(futures_correlation_nh_df)
|
akshare/spot/spot_sge.py
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# -*- coding:utf-8 -*-
|
|
2
2
|
# !/usr/bin/env python
|
|
3
3
|
"""
|
|
4
|
-
Date: 2024/
|
|
4
|
+
Date: 2024/8/22 10:00
|
|
5
5
|
Desc: 上海黄金交易所-数据资讯-行情走势
|
|
6
6
|
https://www.sge.com.cn/sjzx/mrhq
|
|
7
7
|
上海黄金交易所-数据资讯-上海金基准价-历史数据
|
|
@@ -11,6 +11,8 @@ https://www.sge.com.cn/sjzx/mrhq
|
|
|
11
11
|
import pandas as pd
|
|
12
12
|
import requests
|
|
13
13
|
|
|
14
|
+
from akshare.utils.cons import headers
|
|
15
|
+
|
|
14
16
|
|
|
15
17
|
def spot_symbol_table_sge() -> pd.DataFrame:
|
|
16
18
|
"""
|
|
@@ -45,11 +47,63 @@ def spot_symbol_table_sge() -> pd.DataFrame:
|
|
|
45
47
|
return temp_df
|
|
46
48
|
|
|
47
49
|
|
|
50
|
+
def spot_quotations_sge(symbol: str = "Au99.99") -> pd.DataFrame:
|
|
51
|
+
"""
|
|
52
|
+
上海黄金交易所-实时行情数据
|
|
53
|
+
https://www.sge.com.cn/
|
|
54
|
+
https://www.sge.com.cn/graph/quotations
|
|
55
|
+
:param symbol: choice of {'Au99.99', 'Au99.95', 'Au100g', 'Pt99.95', 'Ag(T+D)', 'Au(T+D)',
|
|
56
|
+
'mAu(T+D)', 'Au(T+N1)', 'Au(T+N2)', 'Ag99.99', 'iAu99.99', 'Au99.5', 'iAu100g',
|
|
57
|
+
'iAu99.5', 'PGC30g', 'NYAuTN06', 'NYAuTN12'}; 可以通过 ak.spot_symbol_table_sge() 获取品种表
|
|
58
|
+
:type symbol: str
|
|
59
|
+
:return: 行情数据
|
|
60
|
+
:rtype: pandas.DataFrame
|
|
61
|
+
"""
|
|
62
|
+
url = "https://www.sge.com.cn/graph/quotations"
|
|
63
|
+
payload = {"instid": symbol}
|
|
64
|
+
headers = {
|
|
65
|
+
"Accept": "application/json, text/javascript, */*; q=0.01",
|
|
66
|
+
"Accept-Encoding": "gzip, deflate, br, zstd",
|
|
67
|
+
"Accept-Language": "zh-CN,zh;q=0.9,en;q=0.8",
|
|
68
|
+
"Cache-Control": "no-cache",
|
|
69
|
+
"Connection": "keep-alive",
|
|
70
|
+
"Content-Length": "15",
|
|
71
|
+
"Content-Type": "application/x-www-form-urlencoded; charset=UTF-8",
|
|
72
|
+
"Host": "www.sge.com.cn",
|
|
73
|
+
"Origin": "https://www.sge.com.cn",
|
|
74
|
+
"Pragma": "no-cache",
|
|
75
|
+
"Referer": "https://www.sge.com.cn/",
|
|
76
|
+
"sec-ch-ua": '"Google Chrome";v="107", "Chromium";v="107", "Not=A?Brand";v="24"',
|
|
77
|
+
"sec-ch-ua-mobile": "?0",
|
|
78
|
+
"sec-ch-ua-platform": '"Windows"',
|
|
79
|
+
"Sec-Fetch-Dest": "empty",
|
|
80
|
+
"Sec-Fetch-Mode": "cors",
|
|
81
|
+
"Sec-Fetch-Site": "same-origin",
|
|
82
|
+
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
|
|
83
|
+
"Chrome/107.0.0.0 Safari/537.36",
|
|
84
|
+
"X-Requested-With": "XMLHttpRequest",
|
|
85
|
+
}
|
|
86
|
+
r = requests.get(url, data=payload, headers=headers)
|
|
87
|
+
data_json = r.json()
|
|
88
|
+
temp_df = pd.DataFrame(
|
|
89
|
+
{
|
|
90
|
+
"品种": data_json["heyue"],
|
|
91
|
+
"时间": data_json["times"],
|
|
92
|
+
"现价": data_json["data"],
|
|
93
|
+
"更新时间": data_json["delaystr"],
|
|
94
|
+
}
|
|
95
|
+
)
|
|
96
|
+
temp_df["现价"] = pd.to_numeric(temp_df["现价"], errors="coerce")
|
|
97
|
+
return temp_df
|
|
98
|
+
|
|
99
|
+
|
|
48
100
|
def spot_hist_sge(symbol: str = "Au99.99") -> pd.DataFrame:
|
|
49
101
|
"""
|
|
50
102
|
上海黄金交易所-数据资讯-行情走势-历史数据
|
|
51
103
|
https://www.sge.com.cn/sjzx/mrhq
|
|
52
|
-
:param symbol: choice of {'Au99.99', 'Au99.95', 'Au100g', 'Pt99.95', 'Ag(T+D)', 'Au(T+D)',
|
|
104
|
+
:param symbol: choice of {'Au99.99', 'Au99.95', 'Au100g', 'Pt99.95', 'Ag(T+D)', 'Au(T+D)',
|
|
105
|
+
'mAu(T+D)', 'Au(T+N1)', 'Au(T+N2)', 'Ag99.99', 'iAu99.99', 'Au99.5', 'iAu100g', 'iAu99.5',
|
|
106
|
+
'PGC30g', 'NYAuTN06', 'NYAuTN12'}; 可以通过 ak.spot_symbol_table_sge() 获取品种表
|
|
53
107
|
:type symbol: str
|
|
54
108
|
:return: 历史数据
|
|
55
109
|
:rtype: pandas.DataFrame
|
|
@@ -74,7 +128,8 @@ def spot_hist_sge(symbol: str = "Au99.99") -> pd.DataFrame:
|
|
|
74
128
|
"Sec-Fetch-Dest": "empty",
|
|
75
129
|
"Sec-Fetch-Mode": "cors",
|
|
76
130
|
"Sec-Fetch-Site": "same-origin",
|
|
77
|
-
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)
|
|
131
|
+
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
|
|
132
|
+
"Chrome/107.0.0.0 Safari/537.36",
|
|
78
133
|
"X-Requested-With": "XMLHttpRequest",
|
|
79
134
|
}
|
|
80
135
|
r = requests.post(url, data=payload, headers=headers)
|
|
@@ -105,9 +160,6 @@ def spot_golden_benchmark_sge() -> pd.DataFrame:
|
|
|
105
160
|
"""
|
|
106
161
|
url = "https://www.sge.com.cn/graph/DayilyJzj"
|
|
107
162
|
payload = {}
|
|
108
|
-
headers = {
|
|
109
|
-
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36",
|
|
110
|
-
}
|
|
111
163
|
r = requests.post(url, data=payload, headers=headers)
|
|
112
164
|
data_json = r.json()
|
|
113
165
|
temp_df = pd.DataFrame(data_json["wp"])
|
|
@@ -139,9 +191,6 @@ def spot_silver_benchmark_sge() -> pd.DataFrame:
|
|
|
139
191
|
"""
|
|
140
192
|
url = "https://www.sge.com.cn/graph/DayilyShsilverJzj"
|
|
141
193
|
payload = {}
|
|
142
|
-
headers = {
|
|
143
|
-
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36",
|
|
144
|
-
}
|
|
145
194
|
r = requests.post(url, data=payload, headers=headers)
|
|
146
195
|
data_json = r.json()
|
|
147
196
|
temp_df = pd.DataFrame(data_json["wp"])
|
|
@@ -180,3 +229,6 @@ if __name__ == "__main__":
|
|
|
180
229
|
for spot in spot_symbol_table_sge_df["品种"].tolist():
|
|
181
230
|
spot_hist_sge_df = spot_hist_sge(symbol=spot)
|
|
182
231
|
print(spot_hist_sge_df)
|
|
232
|
+
|
|
233
|
+
spot_quotations_sge_df = spot_quotations_sge(symbol="Au99.99")
|
|
234
|
+
print(spot_quotations_sge_df)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
2
|
# -*- coding:utf-8 -*-
|
|
3
3
|
"""
|
|
4
|
-
Date: 2024/
|
|
4
|
+
Date: 2024/8/18 17:30
|
|
5
5
|
Desc: 首页-行情中心-涨停板行情-涨停股池
|
|
6
6
|
https://quote.eastmoney.com/ztb/detail#type=ztgc
|
|
7
7
|
|
|
@@ -44,6 +44,8 @@ def stock_zt_pool_em(date: str = "20231129") -> pd.DataFrame:
|
|
|
44
44
|
data_json = r.json()
|
|
45
45
|
if data_json["data"] is None:
|
|
46
46
|
return pd.DataFrame()
|
|
47
|
+
if len(data_json["data"]["pool"]) == 0:
|
|
48
|
+
return pd.DataFrame()
|
|
47
49
|
temp_df = pd.DataFrame(data_json["data"]["pool"])
|
|
48
50
|
temp_df.reset_index(inplace=True)
|
|
49
51
|
temp_df["index"] = range(1, len(temp_df) + 1)
|
|
@@ -129,6 +131,8 @@ def stock_zt_pool_previous_em(date: str = "20240415") -> pd.DataFrame:
|
|
|
129
131
|
data_json = r.json()
|
|
130
132
|
if data_json["data"] is None:
|
|
131
133
|
return pd.DataFrame()
|
|
134
|
+
if len(data_json["data"]["pool"]) == 0:
|
|
135
|
+
return pd.DataFrame()
|
|
132
136
|
temp_df = pd.DataFrame(data_json["data"]["pool"])
|
|
133
137
|
temp_df.reset_index(inplace=True)
|
|
134
138
|
temp_df["index"] = range(1, len(temp_df) + 1)
|
|
@@ -205,6 +209,8 @@ def stock_zt_pool_strong_em(date: str = "20231129") -> pd.DataFrame:
|
|
|
205
209
|
data_json = r.json()
|
|
206
210
|
if data_json["data"] is None:
|
|
207
211
|
return pd.DataFrame()
|
|
212
|
+
if len(data_json["data"]["pool"]) == 0:
|
|
213
|
+
return pd.DataFrame()
|
|
208
214
|
temp_df = pd.DataFrame(data_json["data"]["pool"])
|
|
209
215
|
temp_df.reset_index(inplace=True)
|
|
210
216
|
temp_df["index"] = range(1, len(temp_df) + 1)
|
|
@@ -279,7 +285,7 @@ def stock_zt_pool_sub_new_em(date: str = "20231129") -> pd.DataFrame:
|
|
|
279
285
|
}
|
|
280
286
|
r = requests.get(url, params=params)
|
|
281
287
|
data_json = r.json()
|
|
282
|
-
if data_json["data"]["pool"] == 0:
|
|
288
|
+
if len(data_json["data"]["pool"]) == 0:
|
|
283
289
|
return pd.DataFrame()
|
|
284
290
|
temp_df = pd.DataFrame(data_json["data"]["pool"])
|
|
285
291
|
temp_df.reset_index(inplace=True)
|
|
@@ -367,6 +373,8 @@ def stock_zt_pool_zbgc_em(date: str = "20231129") -> pd.DataFrame:
|
|
|
367
373
|
data_json = r.json()
|
|
368
374
|
if data_json["data"] is None:
|
|
369
375
|
return pd.DataFrame()
|
|
376
|
+
if len(data_json["data"]["pool"]) == 0:
|
|
377
|
+
return pd.DataFrame()
|
|
370
378
|
temp_df = pd.DataFrame(data_json["data"]["pool"])
|
|
371
379
|
temp_df.reset_index(inplace=True)
|
|
372
380
|
temp_df["index"] = range(1, len(temp_df) + 1)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
akshare/__init__.py,sha256=
|
|
1
|
+
akshare/__init__.py,sha256=CJdmywJ8pTFJlDkUKAiTGYYgjR827XXdayzoNxdKy94,180998
|
|
2
2
|
akshare/datasets.py,sha256=oIu1zC7o_LMHY22lQmdM7vCnryHibKrJLBqJwQiitlI,1167
|
|
3
3
|
akshare/air/__init__.py,sha256=RMTf1bT5EOE3ttWpn3hGu1LtUmsVxDoa0W7W0gXHOy8,81
|
|
4
4
|
akshare/air/air_hebei.py,sha256=xIXNGLK7IGYqrkteM9fxnHAwWqk6PCQs6D9-ggZ7byY,4442
|
|
@@ -101,7 +101,7 @@ akshare/fund/fund_scale_sina.py,sha256=cQ39Pt6ia3GrVCFWv0GhLMqxyedX3qRrvkDLee7N9
|
|
|
101
101
|
akshare/fund/fund_xq.py,sha256=qGMKYC0Vi2AXfnjsS0P9B2ITfpkQ85i4ayXA6kJ6a7o,11295
|
|
102
102
|
akshare/futures/__init__.py,sha256=RMTf1bT5EOE3ttWpn3hGu1LtUmsVxDoa0W7W0gXHOy8,81
|
|
103
103
|
akshare/futures/cons.py,sha256=sc0LW_k_Poc3V3r_Mz8DiKfLy7aisda28pK0u8ffMus,16193
|
|
104
|
-
akshare/futures/cot.py,sha256=
|
|
104
|
+
akshare/futures/cot.py,sha256=Kkza2slS7JQpXndKrQEEykzIjZIT3vhvtZHVJ7P1yac,58573
|
|
105
105
|
akshare/futures/futures_basis.py,sha256=ixaucu9loaPUwa2BOhRek0bI6VhdXY_ScyQ2EOZEPBA,13884
|
|
106
106
|
akshare/futures/futures_comex_em.py,sha256=V-mkKQkH5N8PyaZWKdyggb2lTnY8DDDxiUPt-1leQu0,3171
|
|
107
107
|
akshare/futures/futures_comm_ctp.py,sha256=V8TEKO0R0i6LfE8DDFqrMA3JGwNlpmaQCvvMugKZ1I8,1004
|
|
@@ -110,7 +110,7 @@ akshare/futures/futures_contract_detail.py,sha256=auwzNdaoFi5hoJY6rNkO54v5FD2gmE
|
|
|
110
110
|
akshare/futures/futures_daily_bar.py,sha256=Zmabe58qHxF0gJ8CKAw9uuuUtxfYMhLNWSJioMGYK04,25363
|
|
111
111
|
akshare/futures/futures_foreign.py,sha256=oSIoAg5oy-CIlPWHkQffcvZGu02Y2GWOrt-6aPA53Xg,2059
|
|
112
112
|
akshare/futures/futures_hf_em.py,sha256=OEUltaq1LKabl9eTQoNxswnl1BLKpB27eiIHwbu_Rh4,3178
|
|
113
|
-
akshare/futures/futures_hq_sina.py,sha256=
|
|
113
|
+
akshare/futures/futures_hq_sina.py,sha256=4qDv8U99Ic82QbFNvwsuaHZX2VPl8Ei-yNsEnRpaPZA,9582
|
|
114
114
|
akshare/futures/futures_index_ccidx.py,sha256=9Rhk3ps-H69tU-NIV0W2NdLFUDTSUx0bwtePA6gLMZA,4566
|
|
115
115
|
akshare/futures/futures_international.py,sha256=EE_JTjQKekx8_FU8M12wHSd1DSlfMXYFiBJ6_wmThfc,6946
|
|
116
116
|
akshare/futures/futures_inventory_99.py,sha256=Nvw39obGGhgOkk_C4jOrV4gdq78dtHPOnits_B0Ljxk,8450
|
|
@@ -143,7 +143,7 @@ akshare/futures_derivative/futures_index_price_nh.py,sha256=TzrGGHvyz93UPdPGMokQ
|
|
|
143
143
|
akshare/futures_derivative/futures_index_return_nh.py,sha256=56V3Mic8a-bKlkv4bUm_vTUC1u5qdDzrlZwsbUTCTPM,1734
|
|
144
144
|
akshare/futures_derivative/futures_index_sina.py,sha256=G1dPeQcsHwMG81J4MqVjkHqFBM363ktzJmNI-EBsi3A,5902
|
|
145
145
|
akshare/futures_derivative/futures_index_volatility_nh.py,sha256=IInn3yf2RqBStFcS8dHtqr3YW8myBD71v_04KA5JAy0,1824
|
|
146
|
-
akshare/futures_derivative/futures_other_index_nh.py,sha256=
|
|
146
|
+
akshare/futures_derivative/futures_other_index_nh.py,sha256=b2oUWSuUIEL-lr2tUK6bIVxIhFNXbp7y2IaVXWqkcz0,4414
|
|
147
147
|
akshare/futures_derivative/futures_spot_sys.py,sha256=Ufqh7S7UAeW_zkASap_DZGqwyW_Vgrf2UOhedYhe-BU,3351
|
|
148
148
|
akshare/fx/__init__.py,sha256=fvH_pVxTFPnzXvnPvJZDD_vv0IBJusHkJxZ3dJ8ogl8,82
|
|
149
149
|
akshare/fx/cons.py,sha256=6xxySOGmJ-sd4mygg0dT48oz-vcyOQcqWY4T2h3wjQQ,585
|
|
@@ -228,7 +228,7 @@ akshare/sport/sport_olympic.py,sha256=CB1cvLpz2BWuadfonhHuQ17Qxt9X_3ks0Zc5Bff2w9
|
|
|
228
228
|
akshare/spot/__init__.py,sha256=VGuha94pXYoezmMs3F3Q_ofaN8RZIrkJ2NtVv8hWCjY,83
|
|
229
229
|
akshare/spot/spot_hog_soozhu.py,sha256=IEt7zrDs0ptAKgMA7QRIk45jcMLcA_LGq6Y3lKLFTi0,9397
|
|
230
230
|
akshare/spot/spot_price_qh.py,sha256=rRv09vR8K0U_x6x8AiLgGluxytIXkLatFNVkFbIh8eQ,3756
|
|
231
|
-
akshare/spot/spot_sge.py,sha256=
|
|
231
|
+
akshare/spot/spot_sge.py,sha256=sXaUGPm8yEXogssNFyFgTlnpf363g7s3U6xO4Zyvk9g,8213
|
|
232
232
|
akshare/stock/__init__.py,sha256=jSa9260d6aNZajaW68chI2mpPkDSXLOgi3eXrqo4MQ8,82
|
|
233
233
|
akshare/stock/cons.py,sha256=0oyUW5Pu-iQ3qgh-TFemM_O5f1fAwVe-PsI4Qa8EYpQ,42956
|
|
234
234
|
akshare/stock/stock_allotment_cninfo.py,sha256=qk--nWhskZWnUUOwBvfgiFJEOd1GqmQijzzVlORCG2I,6059
|
|
@@ -350,7 +350,7 @@ akshare/stock_feature/stock_zdhtmx_em.py,sha256=2BpJQntGgUlEIOmDlepOiOkw-e-tKLRa
|
|
|
350
350
|
akshare/stock_feature/stock_zf_pg.py,sha256=nYJ1uLOBdzM_PDyq4MNeWoCTripFMAPoAiaPfhDqkcg,6343
|
|
351
351
|
akshare/stock_feature/stock_zh_valuation_baidu.py,sha256=oxYIHP68pFvAYyqjCvZp3a9tpczTFiWhSxZ0w4eyo7I,1904
|
|
352
352
|
akshare/stock_feature/stock_zh_vote_baidu.py,sha256=SsSNnCq7PDFMzWFcPFcC_MSc9rua412P14vHc923gmo,1761
|
|
353
|
-
akshare/stock_feature/stock_ztb_em.py,sha256
|
|
353
|
+
akshare/stock_feature/stock_ztb_em.py,sha256=VaA1Hj0ExzTR7wi5mj_Ruhgvl5bZNyKINiKR2p9n73Y,17019
|
|
354
354
|
akshare/stock_feature/ths.js,sha256=AWPkHf3L2Il1UUL0F5qDqNn1dfU0OlZBNUbMf8AmI3Y,39664
|
|
355
355
|
akshare/stock_fundamental/__init__.py,sha256=jiXoO9OXiMxB0wHaPQkuxNckYuoFKtzuhZL1ytnE2nQ,82
|
|
356
356
|
akshare/stock_fundamental/stock_finance.py,sha256=d10iE6BPMsEEPDk7-Xd5_3EnHWlUv5Y_7t7ibniW0A4,30687
|
|
@@ -380,8 +380,8 @@ akshare/utils/token_process.py,sha256=K4rGXjh_tgugbRcyOK2h2x0jP3PT65IIK7nxhUKhOe
|
|
|
380
380
|
akshare/utils/tqdm.py,sha256=MuPNwcswkOGjwWQOMWXi9ZvQ_RmW4obCWRj2i7HM7FE,847
|
|
381
381
|
tests/__init__.py,sha256=gNzhlO0UPjFq6Ieb38kaVIODXv4cTDByrdohAZnDYt4,82
|
|
382
382
|
tests/test_func.py,sha256=tfvy_YnYmDra2dkKZ5JvprU1gNW5X9T634PszdSdH1A,944
|
|
383
|
-
akshare-1.14.
|
|
384
|
-
akshare-1.14.
|
|
385
|
-
akshare-1.14.
|
|
386
|
-
akshare-1.14.
|
|
387
|
-
akshare-1.14.
|
|
383
|
+
akshare-1.14.63.dist-info/LICENSE,sha256=mmSZCPgfHiVw34LXuFArd-SUgQtBJ_QsIlh-kWlDHfs,1073
|
|
384
|
+
akshare-1.14.63.dist-info/METADATA,sha256=3xjOwl22QmMxtxdLNnS3R23J9zXmEy5qFzkGpDupjNw,13961
|
|
385
|
+
akshare-1.14.63.dist-info/WHEEL,sha256=Mdi9PDNwEZptOjTlUcAth7XJDFtKrHYaQMPulZeBCiQ,91
|
|
386
|
+
akshare-1.14.63.dist-info/top_level.txt,sha256=jsf9ZzZPmHaISTVumQPsAw7vv7Yv-PdEVW70SMEelQQ,14
|
|
387
|
+
akshare-1.14.63.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|