akshare 1.16.37__py3-none-any.whl → 1.16.39__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.
- akshare/__init__.py +3 -1
- akshare/bond/bond_zh_cov.py +15 -23
- akshare/fund/fund_etf_em.py +11 -14
- akshare/option/option_em.py +4 -7
- akshare/stock_feature/stock_hsgt_em.py +5 -8
- {akshare-1.16.37.dist-info → akshare-1.16.39.dist-info}/METADATA +1 -1
- {akshare-1.16.37.dist-info → akshare-1.16.39.dist-info}/RECORD +10 -10
- {akshare-1.16.37.dist-info → akshare-1.16.39.dist-info}/LICENSE +0 -0
- {akshare-1.16.37.dist-info → akshare-1.16.39.dist-info}/WHEEL +0 -0
- {akshare-1.16.37.dist-info → akshare-1.16.39.dist-info}/top_level.txt +0 -0
akshare/__init__.py
CHANGED
@@ -3046,9 +3046,11 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
|
|
3046
3046
|
1.16.35 fix: fix futures_global_spot_em interface
|
3047
3047
|
1.16.36 fix: fix stock_intraday_em interface
|
3048
3048
|
1.16.37 fix: fix stock_board_concept_hist_em interface
|
3049
|
+
1.16.38 fix: fix fund_etf_hist_em interface
|
3050
|
+
1.16.39 fix: fix option_current_em interface
|
3049
3051
|
"""
|
3050
3052
|
|
3051
|
-
__version__ = "1.16.
|
3053
|
+
__version__ = "1.16.39"
|
3052
3054
|
__author__ = "AKFamily"
|
3053
3055
|
|
3054
3056
|
import sys
|
akshare/bond/bond_zh_cov.py
CHANGED
@@ -22,6 +22,7 @@ from akshare.bond.cons import (
|
|
22
22
|
from akshare.stock.cons import hk_js_decode
|
23
23
|
from akshare.utils import demjson
|
24
24
|
from akshare.utils.tqdm import get_tqdm
|
25
|
+
from akshare.utils.func import fetch_paginated_data
|
25
26
|
|
26
27
|
|
27
28
|
def _get_zh_bond_hs_cov_page_count() -> int:
|
@@ -57,7 +58,7 @@ def bond_zh_hs_cov_spot() -> pd.DataFrame:
|
|
57
58
|
zh_sina_bond_hs_payload_copy.update({"page": page})
|
58
59
|
res = requests.get(zh_sina_bond_hs_cov_url, params=zh_sina_bond_hs_payload_copy)
|
59
60
|
data_json = demjson.decode(res.text)
|
60
|
-
big_df = pd.concat([big_df, pd.DataFrame(data_json)], ignore_index=True)
|
61
|
+
big_df = pd.concat(objs=[big_df, pd.DataFrame(data_json)], ignore_index=True)
|
61
62
|
return big_df
|
62
63
|
|
63
64
|
|
@@ -95,39 +96,35 @@ def _code_id_map() -> dict:
|
|
95
96
|
url = "https://80.push2.eastmoney.com/api/qt/clist/get"
|
96
97
|
params = {
|
97
98
|
"pn": "1",
|
98
|
-
"pz": "
|
99
|
+
"pz": "100",
|
99
100
|
"po": "1",
|
100
|
-
"np": "
|
101
|
+
"np": "1",
|
101
102
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
102
103
|
"fltt": "2",
|
103
104
|
"invt": "2",
|
104
|
-
"fid": "
|
105
|
+
"fid": "f12",
|
105
106
|
"fs": "m:1 t:2,m:1 t:23",
|
106
|
-
"fields": "f12",
|
107
|
+
"fields": "f3,f12",
|
107
108
|
"_": "1623833739532",
|
108
109
|
}
|
109
|
-
|
110
|
-
data_json = r.json()
|
111
|
-
temp_df = pd.DataFrame(data_json["data"]["diff"]).T
|
110
|
+
temp_df = fetch_paginated_data(url, params)
|
112
111
|
temp_df["market_id"] = 1
|
113
|
-
temp_df.columns
|
112
|
+
temp_df.rename(columns={"f12": "sh_code", "market_id": "sh_id"}, inplace=True)
|
114
113
|
code_id_dict = dict(zip(temp_df["sh_code"], temp_df["sh_id"]))
|
115
114
|
params = {
|
116
115
|
"pn": "1",
|
117
|
-
"pz": "
|
116
|
+
"pz": "100",
|
118
117
|
"po": "1",
|
119
|
-
"np": "
|
118
|
+
"np": "1",
|
120
119
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
121
120
|
"fltt": "2",
|
122
121
|
"invt": "2",
|
123
122
|
"fid": "f3",
|
124
123
|
"fs": "m:0 t:6,m:0 t:80",
|
125
|
-
"fields": "f12",
|
124
|
+
"fields": "f3,f12",
|
126
125
|
"_": "1623833739532",
|
127
126
|
}
|
128
|
-
|
129
|
-
data_json = r.json()
|
130
|
-
temp_df_sz = pd.DataFrame(data_json["data"]["diff"]).T
|
127
|
+
temp_df_sz = fetch_paginated_data(url, params)
|
131
128
|
temp_df_sz["sz_id"] = 0
|
132
129
|
code_id_dict.update(dict(zip(temp_df_sz["f12"], temp_df_sz["sz_id"])))
|
133
130
|
return code_id_dict
|
@@ -478,9 +475,9 @@ def bond_cov_comparison() -> pd.DataFrame:
|
|
478
475
|
url = "https://16.push2.eastmoney.com/api/qt/clist/get"
|
479
476
|
params = {
|
480
477
|
"pn": "1",
|
481
|
-
"pz": "
|
478
|
+
"pz": "100",
|
482
479
|
"po": "1",
|
483
|
-
"np": "
|
480
|
+
"np": "1",
|
484
481
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
485
482
|
"fltt": "2",
|
486
483
|
"invt": "2",
|
@@ -490,12 +487,7 @@ def bond_cov_comparison() -> pd.DataFrame:
|
|
490
487
|
"f235,f236,f237,f238,f239,f240,f241,f242,f26,f243",
|
491
488
|
"_": "1590386857527",
|
492
489
|
}
|
493
|
-
|
494
|
-
text_data = r.text
|
495
|
-
json_data = demjson.decode(text_data)
|
496
|
-
temp_df = pd.DataFrame(json_data["data"]["diff"]).T
|
497
|
-
temp_df.reset_index(inplace=True)
|
498
|
-
temp_df["index"] = range(1, len(temp_df) + 1)
|
490
|
+
temp_df = fetch_paginated_data(url, params)
|
499
491
|
temp_df.columns = [
|
500
492
|
"序号",
|
501
493
|
"_",
|
akshare/fund/fund_etf_em.py
CHANGED
@@ -11,6 +11,8 @@ from functools import lru_cache
|
|
11
11
|
import pandas as pd
|
12
12
|
import requests
|
13
13
|
|
14
|
+
from akshare.utils.func import fetch_paginated_data
|
15
|
+
|
14
16
|
|
15
17
|
@lru_cache()
|
16
18
|
def _fund_etf_code_id_map_em() -> dict:
|
@@ -23,21 +25,19 @@ def _fund_etf_code_id_map_em() -> dict:
|
|
23
25
|
url = "https://88.push2.eastmoney.com/api/qt/clist/get"
|
24
26
|
params = {
|
25
27
|
"pn": "1",
|
26
|
-
"pz": "
|
28
|
+
"pz": "100",
|
27
29
|
"po": "1",
|
28
|
-
"np": "
|
30
|
+
"np": "1",
|
29
31
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
30
32
|
"fltt": "2",
|
31
33
|
"invt": "2",
|
32
34
|
"wbp2u": "|0|0|0|web",
|
33
35
|
"fid": "f3",
|
34
36
|
"fs": "b:MK0021,b:MK0022,b:MK0023,b:MK0024",
|
35
|
-
"fields": "f12,f13",
|
37
|
+
"fields": "f3,f12,f13",
|
36
38
|
"_": "1672806290972",
|
37
39
|
}
|
38
|
-
|
39
|
-
data_json = r.json()
|
40
|
-
temp_df = pd.DataFrame(data_json["data"]["diff"]).T
|
40
|
+
temp_df = fetch_paginated_data(url, params)
|
41
41
|
temp_dict = dict(zip(temp_df["f12"], temp_df["f13"]))
|
42
42
|
return temp_dict
|
43
43
|
|
@@ -52,9 +52,9 @@ def fund_etf_spot_em() -> pd.DataFrame:
|
|
52
52
|
url = "https://88.push2.eastmoney.com/api/qt/clist/get"
|
53
53
|
params = {
|
54
54
|
"pn": "1",
|
55
|
-
"pz": "
|
55
|
+
"pz": "100",
|
56
56
|
"po": "1",
|
57
|
-
"np": "
|
57
|
+
"np": "1",
|
58
58
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
59
59
|
"fltt": "2",
|
60
60
|
"invt": "2",
|
@@ -71,9 +71,7 @@ def fund_etf_spot_em() -> pd.DataFrame:
|
|
71
71
|
),
|
72
72
|
"_": "1672806290972",
|
73
73
|
}
|
74
|
-
|
75
|
-
data_json = r.json()
|
76
|
-
temp_df = pd.DataFrame(data_json["data"]["diff"]).T
|
74
|
+
temp_df = fetch_paginated_data(url, params)
|
77
75
|
temp_df.rename(
|
78
76
|
columns={
|
79
77
|
"f12": "代码",
|
@@ -218,7 +216,6 @@ def fund_etf_spot_em() -> pd.DataFrame:
|
|
218
216
|
.dt.tz_localize("UTC")
|
219
217
|
.dt.tz_convert("Asia/Shanghai")
|
220
218
|
)
|
221
|
-
|
222
219
|
return temp_df
|
223
220
|
|
224
221
|
|
@@ -481,7 +478,7 @@ if __name__ == "__main__":
|
|
481
478
|
symbol="511380",
|
482
479
|
period="1",
|
483
480
|
adjust="",
|
484
|
-
start_date="
|
485
|
-
end_date="
|
481
|
+
start_date="2025-03-10 09:30:00",
|
482
|
+
end_date="2025-03-10 17:40:00",
|
486
483
|
)
|
487
484
|
print(fund_etf_hist_min_em_df)
|
akshare/option/option_em.py
CHANGED
@@ -8,6 +8,7 @@ https://quote.eastmoney.com/center/qqsc.html
|
|
8
8
|
|
9
9
|
import pandas as pd
|
10
10
|
import requests
|
11
|
+
from akshare.utils.func import fetch_paginated_data
|
11
12
|
|
12
13
|
|
13
14
|
def option_current_em() -> pd.DataFrame:
|
@@ -20,9 +21,9 @@ def option_current_em() -> pd.DataFrame:
|
|
20
21
|
url = "https://23.push2.eastmoney.com/api/qt/clist/get"
|
21
22
|
params = {
|
22
23
|
"pn": "1",
|
23
|
-
"pz": "
|
24
|
+
"pz": "100",
|
24
25
|
"po": "1",
|
25
|
-
"np": "
|
26
|
+
"np": "1",
|
26
27
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
27
28
|
"fltt": "2",
|
28
29
|
"invt": "2",
|
@@ -32,11 +33,7 @@ def option_current_em() -> pd.DataFrame:
|
|
32
33
|
"f23,f24,f25,f22,f28,f11,f62,f128,f136,f115,f152,f133,f108,f163,f161,f162",
|
33
34
|
"_": "1606225274063",
|
34
35
|
}
|
35
|
-
|
36
|
-
data_json = r.json()
|
37
|
-
temp_df = pd.DataFrame(data_json["data"]["diff"]).T
|
38
|
-
temp_df.reset_index(inplace=True)
|
39
|
-
temp_df["index"] = temp_df["index"].astype(int) + 1
|
36
|
+
temp_df = fetch_paginated_data(url=url, base_params=params)
|
40
37
|
temp_df.columns = [
|
41
38
|
"序号",
|
42
39
|
"_",
|
@@ -12,6 +12,7 @@ import requests
|
|
12
12
|
from bs4 import BeautifulSoup
|
13
13
|
|
14
14
|
from akshare.utils.tqdm import get_tqdm
|
15
|
+
from akshare.utils.func import fetch_paginated_data
|
15
16
|
|
16
17
|
|
17
18
|
def stock_hsgt_fund_flow_summary_em() -> pd.DataFrame:
|
@@ -101,22 +102,18 @@ def stock_hk_ggt_components_em() -> pd.DataFrame:
|
|
101
102
|
url = "https://33.push2.eastmoney.com/api/qt/clist/get"
|
102
103
|
params = {
|
103
104
|
"pn": "1",
|
104
|
-
"pz": "
|
105
|
+
"pz": "100",
|
105
106
|
"po": "1",
|
106
|
-
"np": "
|
107
|
+
"np": "1",
|
107
108
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
108
109
|
"fltt": "2",
|
109
|
-
"fid": "
|
110
|
+
"fid": "f12",
|
110
111
|
"fs": "b:DLMK0146,b:DLMK0144",
|
111
112
|
"fields": "f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f12,f13,f14,f15,f16,f17,f18,f19,f20,f21,f23,f24,"
|
112
113
|
"f25,f26,f22,f33,f11,f62,f128,f136,f115,f152",
|
113
114
|
"_": "1639974456250",
|
114
115
|
}
|
115
|
-
|
116
|
-
data_json = r.json()
|
117
|
-
temp_df = pd.DataFrame(data_json["data"]["diff"]).T
|
118
|
-
temp_df.reset_index(inplace=True)
|
119
|
-
temp_df["index"] = temp_df.index + 1
|
116
|
+
temp_df = fetch_paginated_data(url=url, base_params=params)
|
120
117
|
temp_df.columns = [
|
121
118
|
"序号",
|
122
119
|
"-",
|
@@ -1,4 +1,4 @@
|
|
1
|
-
akshare/__init__.py,sha256=
|
1
|
+
akshare/__init__.py,sha256=N4xHW6fGYJxHg15VX8SkEEUgl6R3vE1PSDblUTwmDOk,190531
|
2
2
|
akshare/datasets.py,sha256=rKuRNZrqi6IMsZ9nyvO3Rx02js0tH3zMLjz8HQNAoPQ,963
|
3
3
|
akshare/exceptions.py,sha256=WEJjIhSmJ_xXNW6grwV4nufE_cfmmyuhmueVGiN1VAg,878
|
4
4
|
akshare/request.py,sha256=HtFFf9MhfEibR-ETWe-1Tts6ELU4VKSqA-ghaXjegQM,4252
|
@@ -30,7 +30,7 @@ akshare/bond/bond_info_cm.py,sha256=VBu9UM9tUcGDRV07pndU9yttLDF_Nk3b0vU0n65qpHs,
|
|
30
30
|
akshare/bond/bond_issue_cninfo.py,sha256=tPoZhF-_sIX9ztCKB0K0-Z4Kd9b-389bP3_CdFK7Wb0,21672
|
31
31
|
akshare/bond/bond_nafmii.py,sha256=cekcobyXKMG1zDuM8wHWOn__SuWELxYmUwfGVmLRP40,2155
|
32
32
|
akshare/bond/bond_summary.py,sha256=ECwCRcs5YMIro4I1Yayf6SZ8nz1Hr97RhmKT6aGaQDg,3581
|
33
|
-
akshare/bond/bond_zh_cov.py,sha256=
|
33
|
+
akshare/bond/bond_zh_cov.py,sha256=TP2S3KQY0lK1xeMld5mGgydVnmGhjaMnutFT1aWG_ko,23547
|
34
34
|
akshare/bond/bond_zh_sina.py,sha256=msj7upgqaCTzC_MxzhUm7hVKtzHeWRUjlcjvZn2zlbw,4654
|
35
35
|
akshare/bond/cons.py,sha256=SGqjMqRYwJlEb8UczxdcrtcD7I2SAVULXARGEedEQfE,1792
|
36
36
|
akshare/cal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -89,7 +89,7 @@ akshare/fund/fund_amac.py,sha256=Dml3EgpJhmVgkttb0OdaWN41ynOCIbJ0-1qAPDWF0oo,338
|
|
89
89
|
akshare/fund/fund_announcement.py,sha256=g5rcIC9vQ4HapZd0b7cDbFYzHu9V6bOKhwxRHVfmv8k,1848
|
90
90
|
akshare/fund/fund_aum_em.py,sha256=dy1R1-0X48H8S-LPiuggNA5M-6MvQ08fnp5bytvCGPQ,3518
|
91
91
|
akshare/fund/fund_em.py,sha256=HDJEhnWjxYN_0yg6p9WRkG3i1-hheBC7CSBzht_-IhQ,41785
|
92
|
-
akshare/fund/fund_etf_em.py,sha256=
|
92
|
+
akshare/fund/fund_etf_em.py,sha256=WA_M_URnBMRYHHz4cx4gEj8igcZxsWoNPrkv297vqhc,17272
|
93
93
|
akshare/fund/fund_etf_sina.py,sha256=YV2KrqKMF_h8kgrywvWvRJx2oy62lhgizvHFk40E4Rk,7042
|
94
94
|
akshare/fund/fund_etf_ths.py,sha256=vb_jy0h2-Kz2dNWUrwBYxPB0MAotv0KZgnFhE98ohSM,3432
|
95
95
|
akshare/fund/fund_fee_em.py,sha256=fa_Nfr4GWx4FNzNY0blBPhIZ3fGW5qedQOuYIAlVsvE,4158
|
@@ -199,7 +199,7 @@ akshare/option/option_commodity.py,sha256=KQ690k83wKnjYN5Sf3meLx0pvEYAc5dE2tOkv3
|
|
199
199
|
akshare/option/option_commodity_sina.py,sha256=r6qK_K7w3A6Uqp5ZtBb4pW7vH04oMyeCEZLLGqi0jpA,7776
|
200
200
|
akshare/option/option_czce.py,sha256=L4i7TVKcOns5ZKoqq-mrSykdx3SGwu6OL4eI77-A_lc,1812
|
201
201
|
akshare/option/option_daily_stats_sse_szse.py,sha256=Ip_vE81qbEGt4ocbtWfUT7XGu0HWU0zKkzauZeq9RJA,4962
|
202
|
-
akshare/option/option_em.py,sha256=
|
202
|
+
akshare/option/option_em.py,sha256=SV_pBGDE4rer1wZ3wsBsfjtOIIudBAHPuk6_5kPAPBc,5860
|
203
203
|
akshare/option/option_finance.py,sha256=7rnEeHo-7Sddrs36Q4c99CXL_9m8IJzw9S1Aqh3Bw90,12568
|
204
204
|
akshare/option/option_finance_sina.py,sha256=Pzsrl_NKN99nWPSAirq7ushGwSfd738ISVYeCHxMZXE,37843
|
205
205
|
akshare/option/option_lhb_em.py,sha256=VHrV2BWAPE7tj8q7J5Crjm-sey8QarYd1lgxKbkX2CQ,9090
|
@@ -322,7 +322,7 @@ akshare/stock_feature/stock_hist_em.py,sha256=vC3gWA1hTgWdwk4VFfk6HOwfWuzlYO2xa5
|
|
322
322
|
akshare/stock_feature/stock_hist_tx.py,sha256=WpLsbkG2didSx7lYNkSbTWNTrLhUKbcopfD18WO2Rlc,3397
|
323
323
|
akshare/stock_feature/stock_hk_valuation_baidu.py,sha256=_sErx4UhNsSXJgXyPfrL0aPxkW53Mg1zH9gEKoziaCA,1968
|
324
324
|
akshare/stock_feature/stock_hot_xq.py,sha256=NmoH4x-0hiDztj-YwzMFVIyOICQ2wUUBbhjt91q-tq4,9112
|
325
|
-
akshare/stock_feature/stock_hsgt_em.py,sha256
|
325
|
+
akshare/stock_feature/stock_hsgt_em.py,sha256=-BN09F02MXMjP-8lmXUpaYuueVYuZooYxKh6Cd6GIqY,57698
|
326
326
|
akshare/stock_feature/stock_hsgt_exchange_rate.py,sha256=-oJZ83FUQrNJX_4GB5hS562IdrfJbCwr0d5ioYXtPrQ,7212
|
327
327
|
akshare/stock_feature/stock_hsgt_min_em.py,sha256=KLeez7MQwBAcO-RT7n41LOikUfvXDGK0-G1n9av5mtY,2883
|
328
328
|
akshare/stock_feature/stock_info.py,sha256=JSmJWrSzzq4sP4CgOU0mYGVcbXeWlRDQxNYtbSjJmiM,9043
|
@@ -388,8 +388,8 @@ akshare/utils/token_process.py,sha256=K4rGXjh_tgugbRcyOK2h2x0jP3PT65IIK7nxhUKhOe
|
|
388
388
|
akshare/utils/tqdm.py,sha256=MuPNwcswkOGjwWQOMWXi9ZvQ_RmW4obCWRj2i7HM7FE,847
|
389
389
|
tests/__init__.py,sha256=gNzhlO0UPjFq6Ieb38kaVIODXv4cTDByrdohAZnDYt4,82
|
390
390
|
tests/test_func.py,sha256=j1MGYbZI2if2j_LY1S4FLsf4qfq4NwVqD5wmRlv5Log,832
|
391
|
-
akshare-1.16.
|
392
|
-
akshare-1.16.
|
393
|
-
akshare-1.16.
|
394
|
-
akshare-1.16.
|
395
|
-
akshare-1.16.
|
391
|
+
akshare-1.16.39.dist-info/LICENSE,sha256=mmSZCPgfHiVw34LXuFArd-SUgQtBJ_QsIlh-kWlDHfs,1073
|
392
|
+
akshare-1.16.39.dist-info/METADATA,sha256=tHG2gpJ4nT8AAmz7PKYOODVWbEdgLQppyAjBCZXtk4E,13653
|
393
|
+
akshare-1.16.39.dist-info/WHEEL,sha256=52BFRY2Up02UkjOa29eZOS2VxUrpPORXg1pkohGGUS8,91
|
394
|
+
akshare-1.16.39.dist-info/top_level.txt,sha256=jsf9ZzZPmHaISTVumQPsAw7vv7Yv-PdEVW70SMEelQQ,14
|
395
|
+
akshare-1.16.39.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|