akshare 1.15.95__py3-none-any.whl → 1.15.97__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 +3 -1
- akshare/bond/bond_zh_cov.py +48 -8
- akshare/fund/fund_etf_em.py +1 -1
- akshare/index/index_stock_zh.py +10 -3
- akshare/index/index_zh_em.py +3 -3
- akshare/stock/stock_ask_bid_em.py +2 -75
- akshare/stock/stock_intraday_em.py +52 -12
- akshare/stock_feature/stock_hist_em.py +46 -7
- {akshare-1.15.95.dist-info → akshare-1.15.97.dist-info}/METADATA +1 -1
- {akshare-1.15.95.dist-info → akshare-1.15.97.dist-info}/RECORD +13 -13
- {akshare-1.15.95.dist-info → akshare-1.15.97.dist-info}/LICENSE +0 -0
- {akshare-1.15.95.dist-info → akshare-1.15.97.dist-info}/WHEEL +0 -0
- {akshare-1.15.95.dist-info → akshare-1.15.97.dist-info}/top_level.txt +0 -0
akshare/__init__.py
CHANGED
|
@@ -3005,9 +3005,11 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
|
|
|
3005
3005
|
1.15.93 fix: fix fund_etf_spot_em interface
|
|
3006
3006
|
1.15.94 fix: fix stock_zh_index_spot_em interface
|
|
3007
3007
|
1.15.95 fix: fix stock_us_spot_em interface
|
|
3008
|
+
1.15.96 fix: fix bond_cov_comparison interface
|
|
3009
|
+
1.15.97 fix: fix stock_intraday_em interface
|
|
3008
3010
|
"""
|
|
3009
3011
|
|
|
3010
|
-
__version__ = "1.15.
|
|
3012
|
+
__version__ = "1.15.97"
|
|
3011
3013
|
__author__ = "AKFamily"
|
|
3012
3014
|
|
|
3013
3015
|
import sys
|
akshare/bond/bond_zh_cov.py
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
2
|
# -*- coding:utf-8 -*-
|
|
3
3
|
"""
|
|
4
|
-
Date:
|
|
4
|
+
Date: 2025/2/17 12:50
|
|
5
5
|
Desc: 新浪财经-债券-沪深可转债-实时行情数据和历史行情数据
|
|
6
6
|
https://vip.stock.finance.sina.com.cn/mkt/#hskzz_z
|
|
7
7
|
"""
|
|
8
8
|
|
|
9
|
+
import math
|
|
9
10
|
import datetime
|
|
10
11
|
import re
|
|
11
12
|
|
|
@@ -95,7 +96,7 @@ 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": "200",
|
|
99
100
|
"po": "1",
|
|
100
101
|
"np": "1",
|
|
101
102
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
@@ -108,13 +109,26 @@ def _code_id_map() -> dict:
|
|
|
108
109
|
}
|
|
109
110
|
r = requests.get(url, params=params)
|
|
110
111
|
data_json = r.json()
|
|
111
|
-
|
|
112
|
+
total_page = math.ceil(data_json["data"]["total"] / 200)
|
|
113
|
+
temp_list = []
|
|
114
|
+
tqdm = get_tqdm()
|
|
115
|
+
for page in tqdm(range(1, total_page + 1), leave=False):
|
|
116
|
+
params.update(
|
|
117
|
+
{
|
|
118
|
+
"pn": page,
|
|
119
|
+
}
|
|
120
|
+
)
|
|
121
|
+
r = requests.get(url, params=params, timeout=15)
|
|
122
|
+
data_json = r.json()
|
|
123
|
+
inner_temp_df = pd.DataFrame(data_json["data"]["diff"])
|
|
124
|
+
temp_list.append(inner_temp_df)
|
|
125
|
+
temp_df = pd.concat(temp_list, ignore_index=True)
|
|
112
126
|
temp_df["market_id"] = 1
|
|
113
127
|
temp_df.columns = ["sh_code", "sh_id"]
|
|
114
128
|
code_id_dict = dict(zip(temp_df["sh_code"], temp_df["sh_id"]))
|
|
115
129
|
params = {
|
|
116
130
|
"pn": "1",
|
|
117
|
-
"pz": "
|
|
131
|
+
"pz": "200",
|
|
118
132
|
"po": "1",
|
|
119
133
|
"np": "1",
|
|
120
134
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
@@ -127,7 +141,20 @@ def _code_id_map() -> dict:
|
|
|
127
141
|
}
|
|
128
142
|
r = requests.get(url, params=params)
|
|
129
143
|
data_json = r.json()
|
|
130
|
-
|
|
144
|
+
total_page = math.ceil(data_json["data"]["total"] / 200)
|
|
145
|
+
temp_list = []
|
|
146
|
+
tqdm = get_tqdm()
|
|
147
|
+
for page in tqdm(range(1, total_page + 1), leave=False):
|
|
148
|
+
params.update(
|
|
149
|
+
{
|
|
150
|
+
"pn": page,
|
|
151
|
+
}
|
|
152
|
+
)
|
|
153
|
+
r = requests.get(url, params=params, timeout=15)
|
|
154
|
+
data_json = r.json()
|
|
155
|
+
inner_temp_df = pd.DataFrame(data_json["data"]["diff"])
|
|
156
|
+
temp_list.append(inner_temp_df)
|
|
157
|
+
temp_df_sz = pd.concat(temp_list, ignore_index=True)
|
|
131
158
|
temp_df_sz["sz_id"] = 0
|
|
132
159
|
code_id_dict.update(dict(zip(temp_df_sz["f12"], temp_df_sz["sz_id"])))
|
|
133
160
|
return code_id_dict
|
|
@@ -478,7 +505,7 @@ def bond_cov_comparison() -> pd.DataFrame:
|
|
|
478
505
|
url = "https://16.push2.eastmoney.com/api/qt/clist/get"
|
|
479
506
|
params = {
|
|
480
507
|
"pn": "1",
|
|
481
|
-
"pz": "
|
|
508
|
+
"pz": "200",
|
|
482
509
|
"po": "1",
|
|
483
510
|
"np": "1",
|
|
484
511
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
@@ -492,8 +519,21 @@ def bond_cov_comparison() -> pd.DataFrame:
|
|
|
492
519
|
}
|
|
493
520
|
r = requests.get(url, params=params)
|
|
494
521
|
text_data = r.text
|
|
495
|
-
|
|
496
|
-
|
|
522
|
+
data_json = demjson.decode(text_data)
|
|
523
|
+
total_page = math.ceil(data_json["data"]["total"] / 200)
|
|
524
|
+
temp_list = []
|
|
525
|
+
tqdm = get_tqdm()
|
|
526
|
+
for page in tqdm(range(1, total_page + 1), leave=False):
|
|
527
|
+
params.update(
|
|
528
|
+
{
|
|
529
|
+
"pn": page,
|
|
530
|
+
}
|
|
531
|
+
)
|
|
532
|
+
r = requests.get(url, params=params, timeout=15)
|
|
533
|
+
data_json = r.json()
|
|
534
|
+
inner_temp_df = pd.DataFrame(data_json["data"]["diff"])
|
|
535
|
+
temp_list.append(inner_temp_df)
|
|
536
|
+
temp_df = pd.concat(temp_list, ignore_index=True)
|
|
497
537
|
temp_df.reset_index(inplace=True)
|
|
498
538
|
temp_df["index"] = range(1, len(temp_df) + 1)
|
|
499
539
|
temp_df.columns = [
|
akshare/fund/fund_etf_em.py
CHANGED
akshare/index/index_stock_zh.py
CHANGED
|
@@ -247,7 +247,7 @@ def stock_zh_index_spot_em(symbol: str = "沪深重要指数") -> pd.DataFrame:
|
|
|
247
247
|
"fltt": "2",
|
|
248
248
|
"invt": "2",
|
|
249
249
|
"wbp2u": "|0|0|0|web",
|
|
250
|
-
"fid": "
|
|
250
|
+
"fid": "f12",
|
|
251
251
|
"fs": symbol_map[symbol],
|
|
252
252
|
"fields": "f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f12,f13,f14,f15,f16,f17,f18,f20,f21,f23,f24,f25,"
|
|
253
253
|
"f26,f22,f33,f11,f62,f128,f136,f115,f152",
|
|
@@ -496,8 +496,15 @@ if __name__ == "__main__":
|
|
|
496
496
|
stock_zh_index_spot_sina_df = stock_zh_index_spot_sina()
|
|
497
497
|
print(stock_zh_index_spot_sina_df)
|
|
498
498
|
|
|
499
|
-
|
|
500
|
-
|
|
499
|
+
for item in [
|
|
500
|
+
"沪深重要指数",
|
|
501
|
+
"上证系列指数",
|
|
502
|
+
"深证系列指数",
|
|
503
|
+
"指数成份",
|
|
504
|
+
"中证系列指数",
|
|
505
|
+
]:
|
|
506
|
+
stock_zh_index_spot_em_df = stock_zh_index_spot_em(symbol=item)
|
|
507
|
+
print(stock_zh_index_spot_em_df)
|
|
501
508
|
|
|
502
509
|
stock_zh_index_daily_tx_df = stock_zh_index_daily_tx(symbol="sh000919")
|
|
503
510
|
print(stock_zh_index_daily_tx_df)
|
akshare/index/index_zh_em.py
CHANGED
|
@@ -31,7 +31,7 @@ def index_code_id_map_em() -> dict:
|
|
|
31
31
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
32
32
|
"fltt": "2",
|
|
33
33
|
"invt": "2",
|
|
34
|
-
"fid": "
|
|
34
|
+
"fid": "f12",
|
|
35
35
|
"fs": "m:1 t:2,m:1 t:23",
|
|
36
36
|
"fields": "f12",
|
|
37
37
|
"_": "1623833739532",
|
|
@@ -63,7 +63,7 @@ def index_code_id_map_em() -> dict:
|
|
|
63
63
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
64
64
|
"fltt": "2",
|
|
65
65
|
"invt": "2",
|
|
66
|
-
"fid": "
|
|
66
|
+
"fid": "f12",
|
|
67
67
|
"fs": "m:0 t:6,m:0 t:80",
|
|
68
68
|
"fields": "f12",
|
|
69
69
|
"_": "1623833739532",
|
|
@@ -95,7 +95,7 @@ def index_code_id_map_em() -> dict:
|
|
|
95
95
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
96
96
|
"fltt": "2",
|
|
97
97
|
"invt": "2",
|
|
98
|
-
"fid": "
|
|
98
|
+
"fid": "f12",
|
|
99
99
|
"fs": "m:0 t:81 s:2048",
|
|
100
100
|
"fields": "f12",
|
|
101
101
|
"_": "1623833739532",
|
|
@@ -6,83 +6,10 @@ Desc: 东方财富-行情报价
|
|
|
6
6
|
https://quote.eastmoney.com/sz000001.html
|
|
7
7
|
"""
|
|
8
8
|
|
|
9
|
-
from functools import lru_cache
|
|
10
|
-
|
|
11
9
|
import pandas as pd
|
|
12
10
|
import requests
|
|
13
11
|
|
|
14
|
-
|
|
15
|
-
@lru_cache()
|
|
16
|
-
def __code_id_map_em() -> dict:
|
|
17
|
-
"""
|
|
18
|
-
东方财富-股票和市场代码
|
|
19
|
-
https://quote.eastmoney.com/center/gridlist.html#hs_a_board
|
|
20
|
-
:return: 股票和市场代码
|
|
21
|
-
:rtype: dict
|
|
22
|
-
"""
|
|
23
|
-
url = "https://80.push2.eastmoney.com/api/qt/clist/get"
|
|
24
|
-
params = {
|
|
25
|
-
"pn": "1",
|
|
26
|
-
"pz": "50000",
|
|
27
|
-
"po": "1",
|
|
28
|
-
"np": "1",
|
|
29
|
-
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
30
|
-
"fltt": "2",
|
|
31
|
-
"invt": "2",
|
|
32
|
-
"fid": "f3",
|
|
33
|
-
"fs": "m:1 t:2,m:1 t:23",
|
|
34
|
-
"fields": "f12",
|
|
35
|
-
"_": "1623833739532",
|
|
36
|
-
}
|
|
37
|
-
r = requests.get(url, params=params)
|
|
38
|
-
data_json = r.json()
|
|
39
|
-
if not data_json["data"]["diff"]:
|
|
40
|
-
return dict()
|
|
41
|
-
temp_df = pd.DataFrame(data_json["data"]["diff"])
|
|
42
|
-
temp_df["market_id"] = 1
|
|
43
|
-
temp_df.columns = ["sh_code", "sh_id"]
|
|
44
|
-
code_id_dict = dict(zip(temp_df["sh_code"], temp_df["sh_id"]))
|
|
45
|
-
params = {
|
|
46
|
-
"pn": "1",
|
|
47
|
-
"pz": "50000",
|
|
48
|
-
"po": "1",
|
|
49
|
-
"np": "1",
|
|
50
|
-
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
51
|
-
"fltt": "2",
|
|
52
|
-
"invt": "2",
|
|
53
|
-
"fid": "f3",
|
|
54
|
-
"fs": "m:0 t:6,m:0 t:80",
|
|
55
|
-
"fields": "f12",
|
|
56
|
-
"_": "1623833739532",
|
|
57
|
-
}
|
|
58
|
-
r = requests.get(url, params=params)
|
|
59
|
-
data_json = r.json()
|
|
60
|
-
if not data_json["data"]["diff"]:
|
|
61
|
-
return dict()
|
|
62
|
-
temp_df_sz = pd.DataFrame(data_json["data"]["diff"])
|
|
63
|
-
temp_df_sz["sz_id"] = 0
|
|
64
|
-
code_id_dict.update(dict(zip(temp_df_sz["f12"], temp_df_sz["sz_id"])))
|
|
65
|
-
params = {
|
|
66
|
-
"pn": "1",
|
|
67
|
-
"pz": "50000",
|
|
68
|
-
"po": "1",
|
|
69
|
-
"np": "1",
|
|
70
|
-
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
71
|
-
"fltt": "2",
|
|
72
|
-
"invt": "2",
|
|
73
|
-
"fid": "f3",
|
|
74
|
-
"fs": "m:0 t:81 s:2048",
|
|
75
|
-
"fields": "f12",
|
|
76
|
-
"_": "1623833739532",
|
|
77
|
-
}
|
|
78
|
-
r = requests.get(url, params=params)
|
|
79
|
-
data_json = r.json()
|
|
80
|
-
if not data_json["data"]["diff"]:
|
|
81
|
-
return dict()
|
|
82
|
-
temp_df_sz = pd.DataFrame(data_json["data"]["diff"])
|
|
83
|
-
temp_df_sz["bj_id"] = 0
|
|
84
|
-
code_id_dict.update(dict(zip(temp_df_sz["f12"], temp_df_sz["bj_id"])))
|
|
85
|
-
return code_id_dict
|
|
12
|
+
from akshare.stock_feature.stock_hist_em import code_id_map_em
|
|
86
13
|
|
|
87
14
|
|
|
88
15
|
def stock_bid_ask_em(symbol: str = "000001") -> pd.DataFrame:
|
|
@@ -95,7 +22,7 @@ def stock_bid_ask_em(symbol: str = "000001") -> pd.DataFrame:
|
|
|
95
22
|
:rtype: pandas.DataFrame
|
|
96
23
|
"""
|
|
97
24
|
url = "https://push2.eastmoney.com/api/qt/stock/get"
|
|
98
|
-
code_id_map_em_dict =
|
|
25
|
+
code_id_map_em_dict = code_id_map_em()
|
|
99
26
|
params = {
|
|
100
27
|
"fltt": "2",
|
|
101
28
|
"invt": "2",
|
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
2
|
# -*- coding:utf-8 -*-
|
|
3
3
|
"""
|
|
4
|
-
Date:
|
|
4
|
+
Date: 2025/2/17 14:00
|
|
5
5
|
Desc: 东财财富-日内分时数据
|
|
6
6
|
https://quote.eastmoney.com/f1.html?newcode=0.000001
|
|
7
7
|
"""
|
|
8
8
|
|
|
9
9
|
import json
|
|
10
|
+
import math
|
|
10
11
|
from functools import lru_cache
|
|
11
12
|
|
|
12
13
|
import pandas as pd
|
|
13
14
|
import requests
|
|
14
15
|
|
|
16
|
+
from akshare.utils.tqdm import get_tqdm
|
|
17
|
+
|
|
15
18
|
|
|
16
19
|
@lru_cache()
|
|
17
20
|
def __code_id_map_em() -> dict:
|
|
@@ -24,13 +27,13 @@ def __code_id_map_em() -> dict:
|
|
|
24
27
|
url = "http://80.push2.eastmoney.com/api/qt/clist/get"
|
|
25
28
|
params = {
|
|
26
29
|
"pn": "1",
|
|
27
|
-
"pz": "
|
|
30
|
+
"pz": "200",
|
|
28
31
|
"po": "1",
|
|
29
32
|
"np": "1",
|
|
30
33
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
31
34
|
"fltt": "2",
|
|
32
35
|
"invt": "2",
|
|
33
|
-
"fid": "
|
|
36
|
+
"fid": "f12",
|
|
34
37
|
"fs": "m:1 t:2,m:1 t:23",
|
|
35
38
|
"fields": "f12",
|
|
36
39
|
"_": "1623833739532",
|
|
@@ -39,19 +42,32 @@ def __code_id_map_em() -> dict:
|
|
|
39
42
|
data_json = r.json()
|
|
40
43
|
if not data_json["data"]["diff"]:
|
|
41
44
|
return dict()
|
|
42
|
-
|
|
45
|
+
total_page = math.ceil(data_json["data"]["total"] / 200)
|
|
46
|
+
temp_list = []
|
|
47
|
+
tqdm = get_tqdm()
|
|
48
|
+
for page in tqdm(range(1, total_page + 1), leave=False):
|
|
49
|
+
params.update(
|
|
50
|
+
{
|
|
51
|
+
"pn": page,
|
|
52
|
+
}
|
|
53
|
+
)
|
|
54
|
+
r = requests.get(url, params=params, timeout=15)
|
|
55
|
+
data_json = r.json()
|
|
56
|
+
inner_temp_df = pd.DataFrame(data_json["data"]["diff"])
|
|
57
|
+
temp_list.append(inner_temp_df)
|
|
58
|
+
temp_df = pd.concat(temp_list, ignore_index=True)
|
|
43
59
|
temp_df["market_id"] = 1
|
|
44
60
|
temp_df.columns = ["sh_code", "sh_id"]
|
|
45
61
|
code_id_dict = dict(zip(temp_df["sh_code"], temp_df["sh_id"]))
|
|
46
62
|
params = {
|
|
47
63
|
"pn": "1",
|
|
48
|
-
"pz": "
|
|
64
|
+
"pz": "200",
|
|
49
65
|
"po": "1",
|
|
50
66
|
"np": "1",
|
|
51
67
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
52
68
|
"fltt": "2",
|
|
53
69
|
"invt": "2",
|
|
54
|
-
"fid": "
|
|
70
|
+
"fid": "f12",
|
|
55
71
|
"fs": "m:0 t:6,m:0 t:80",
|
|
56
72
|
"fields": "f12",
|
|
57
73
|
"_": "1623833739532",
|
|
@@ -60,18 +76,31 @@ def __code_id_map_em() -> dict:
|
|
|
60
76
|
data_json = r.json()
|
|
61
77
|
if not data_json["data"]["diff"]:
|
|
62
78
|
return dict()
|
|
63
|
-
|
|
79
|
+
total_page = math.ceil(data_json["data"]["total"] / 200)
|
|
80
|
+
temp_list = []
|
|
81
|
+
tqdm = get_tqdm()
|
|
82
|
+
for page in tqdm(range(1, total_page + 1), leave=False):
|
|
83
|
+
params.update(
|
|
84
|
+
{
|
|
85
|
+
"pn": page,
|
|
86
|
+
}
|
|
87
|
+
)
|
|
88
|
+
r = requests.get(url, params=params, timeout=15)
|
|
89
|
+
data_json = r.json()
|
|
90
|
+
inner_temp_df = pd.DataFrame(data_json["data"]["diff"])
|
|
91
|
+
temp_list.append(inner_temp_df)
|
|
92
|
+
temp_df_sz = pd.concat(temp_list, ignore_index=True)
|
|
64
93
|
temp_df_sz["sz_id"] = 0
|
|
65
94
|
code_id_dict.update(dict(zip(temp_df_sz["f12"], temp_df_sz["sz_id"])))
|
|
66
95
|
params = {
|
|
67
96
|
"pn": "1",
|
|
68
|
-
"pz": "
|
|
97
|
+
"pz": "200",
|
|
69
98
|
"po": "1",
|
|
70
99
|
"np": "1",
|
|
71
100
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
72
101
|
"fltt": "2",
|
|
73
102
|
"invt": "2",
|
|
74
|
-
"fid": "
|
|
103
|
+
"fid": "f12",
|
|
75
104
|
"fs": "m:0 t:81 s:2048",
|
|
76
105
|
"fields": "f12",
|
|
77
106
|
"_": "1623833739532",
|
|
@@ -80,7 +109,20 @@ def __code_id_map_em() -> dict:
|
|
|
80
109
|
data_json = r.json()
|
|
81
110
|
if not data_json["data"]["diff"]:
|
|
82
111
|
return dict()
|
|
83
|
-
|
|
112
|
+
total_page = math.ceil(data_json["data"]["total"] / 200)
|
|
113
|
+
temp_list = []
|
|
114
|
+
tqdm = get_tqdm()
|
|
115
|
+
for page in tqdm(range(1, total_page + 1), leave=False):
|
|
116
|
+
params.update(
|
|
117
|
+
{
|
|
118
|
+
"pn": page,
|
|
119
|
+
}
|
|
120
|
+
)
|
|
121
|
+
r = requests.get(url, params=params, timeout=15)
|
|
122
|
+
data_json = r.json()
|
|
123
|
+
inner_temp_df = pd.DataFrame(data_json["data"]["diff"])
|
|
124
|
+
temp_list.append(inner_temp_df)
|
|
125
|
+
temp_df_sz = pd.concat(temp_list, ignore_index=True)
|
|
84
126
|
temp_df_sz["bj_id"] = 0
|
|
85
127
|
code_id_dict.update(dict(zip(temp_df_sz["f12"], temp_df_sz["bj_id"])))
|
|
86
128
|
return code_id_dict
|
|
@@ -121,9 +163,7 @@ def stock_intraday_em(symbol: str = "000001") -> pd.DataFrame:
|
|
|
121
163
|
"secid": f"{code_id_map_em_dict[symbol]}.{symbol}",
|
|
122
164
|
"wbp2u": "|0|0|0|web",
|
|
123
165
|
}
|
|
124
|
-
|
|
125
166
|
big_df = pd.DataFrame() # 创建一个空的 DataFrame
|
|
126
|
-
|
|
127
167
|
for event in __event_stream(url, params):
|
|
128
168
|
# 从每个事件的数据行中删除 "data: ",然后解析 JSON
|
|
129
169
|
event_json = json.loads(event.replace("data: ", ""))
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
2
|
# -*- coding:utf-8 -*-
|
|
3
3
|
"""
|
|
4
|
-
Date: 2025/2/
|
|
4
|
+
Date: 2025/2/17 14:00
|
|
5
5
|
Desc: 东方财富网-行情首页-沪深京 A 股
|
|
6
6
|
https://quote.eastmoney.com/
|
|
7
7
|
"""
|
|
@@ -151,7 +151,7 @@ def stock_sh_a_spot_em() -> pd.DataFrame:
|
|
|
151
151
|
url = "https://82.push2.eastmoney.com/api/qt/clist/get"
|
|
152
152
|
params = {
|
|
153
153
|
"pn": "1",
|
|
154
|
-
"pz": "
|
|
154
|
+
"pz": "200",
|
|
155
155
|
"po": "1",
|
|
156
156
|
"np": "1",
|
|
157
157
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
@@ -167,7 +167,20 @@ def stock_sh_a_spot_em() -> pd.DataFrame:
|
|
|
167
167
|
data_json = r.json()
|
|
168
168
|
if not data_json["data"]["diff"]:
|
|
169
169
|
return pd.DataFrame()
|
|
170
|
-
|
|
170
|
+
total_page = math.ceil(data_json["data"]["total"] / 200)
|
|
171
|
+
temp_list = []
|
|
172
|
+
tqdm = get_tqdm()
|
|
173
|
+
for page in tqdm(range(1, total_page + 1), leave=False):
|
|
174
|
+
params.update(
|
|
175
|
+
{
|
|
176
|
+
"pn": page,
|
|
177
|
+
}
|
|
178
|
+
)
|
|
179
|
+
r = requests.get(url, params=params, timeout=15)
|
|
180
|
+
data_json = r.json()
|
|
181
|
+
inner_temp_df = pd.DataFrame(data_json["data"]["diff"])
|
|
182
|
+
temp_list.append(inner_temp_df)
|
|
183
|
+
temp_df = pd.concat(temp_list, ignore_index=True)
|
|
171
184
|
temp_df.columns = [
|
|
172
185
|
"_",
|
|
173
186
|
"最新价",
|
|
@@ -266,7 +279,7 @@ def stock_sz_a_spot_em() -> pd.DataFrame:
|
|
|
266
279
|
url = "https://82.push2.eastmoney.com/api/qt/clist/get"
|
|
267
280
|
params = {
|
|
268
281
|
"pn": "1",
|
|
269
|
-
"pz": "
|
|
282
|
+
"pz": "200",
|
|
270
283
|
"po": "1",
|
|
271
284
|
"np": "1",
|
|
272
285
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
@@ -282,7 +295,20 @@ def stock_sz_a_spot_em() -> pd.DataFrame:
|
|
|
282
295
|
data_json = r.json()
|
|
283
296
|
if not data_json["data"]["diff"]:
|
|
284
297
|
return pd.DataFrame()
|
|
285
|
-
|
|
298
|
+
total_page = math.ceil(data_json["data"]["total"] / 200)
|
|
299
|
+
temp_list = []
|
|
300
|
+
tqdm = get_tqdm()
|
|
301
|
+
for page in tqdm(range(1, total_page + 1), leave=False):
|
|
302
|
+
params.update(
|
|
303
|
+
{
|
|
304
|
+
"pn": page,
|
|
305
|
+
}
|
|
306
|
+
)
|
|
307
|
+
r = requests.get(url, params=params, timeout=15)
|
|
308
|
+
data_json = r.json()
|
|
309
|
+
inner_temp_df = pd.DataFrame(data_json["data"]["diff"])
|
|
310
|
+
temp_list.append(inner_temp_df)
|
|
311
|
+
temp_df = pd.concat(temp_list, ignore_index=True)
|
|
286
312
|
temp_df.columns = [
|
|
287
313
|
"_",
|
|
288
314
|
"最新价",
|
|
@@ -1349,7 +1375,7 @@ def stock_hk_spot_em() -> pd.DataFrame:
|
|
|
1349
1375
|
url = "https://72.push2.eastmoney.com/api/qt/clist/get"
|
|
1350
1376
|
params = {
|
|
1351
1377
|
"pn": "1",
|
|
1352
|
-
"pz": "
|
|
1378
|
+
"pz": "200",
|
|
1353
1379
|
"po": "1",
|
|
1354
1380
|
"np": "1",
|
|
1355
1381
|
"ut": "bd1d9ddb04089700cf9c27f6f7426281",
|
|
@@ -1363,7 +1389,20 @@ def stock_hk_spot_em() -> pd.DataFrame:
|
|
|
1363
1389
|
}
|
|
1364
1390
|
r = requests.get(url, timeout=15, params=params)
|
|
1365
1391
|
data_json = r.json()
|
|
1366
|
-
|
|
1392
|
+
total_page = math.ceil(data_json["data"]["total"] / 200)
|
|
1393
|
+
temp_list = []
|
|
1394
|
+
tqdm = get_tqdm()
|
|
1395
|
+
for page in tqdm(range(1, total_page + 1), leave=False):
|
|
1396
|
+
params.update(
|
|
1397
|
+
{
|
|
1398
|
+
"pn": page,
|
|
1399
|
+
}
|
|
1400
|
+
)
|
|
1401
|
+
r = requests.get(url, params=params, timeout=15)
|
|
1402
|
+
data_json = r.json()
|
|
1403
|
+
inner_temp_df = pd.DataFrame(data_json["data"]["diff"])
|
|
1404
|
+
temp_list.append(inner_temp_df)
|
|
1405
|
+
temp_df = pd.concat(temp_list, ignore_index=True)
|
|
1367
1406
|
temp_df.columns = [
|
|
1368
1407
|
"_",
|
|
1369
1408
|
"最新价",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
akshare/__init__.py,sha256
|
|
1
|
+
akshare/__init__.py,sha256=-fpSUTt2coTEzLEVK_Dxhaoma0ptMyZRcLGC9RVNK0M,187423
|
|
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=bdTEi-uS4WfvHW59fPn2AJGtrnsqRiKdH3eRKqjHtNM,25085
|
|
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
|
|
@@ -86,7 +86,7 @@ akshare/fund/fund_amac.py,sha256=Dml3EgpJhmVgkttb0OdaWN41ynOCIbJ0-1qAPDWF0oo,338
|
|
|
86
86
|
akshare/fund/fund_announcement.py,sha256=g5rcIC9vQ4HapZd0b7cDbFYzHu9V6bOKhwxRHVfmv8k,1848
|
|
87
87
|
akshare/fund/fund_aum_em.py,sha256=dy1R1-0X48H8S-LPiuggNA5M-6MvQ08fnp5bytvCGPQ,3518
|
|
88
88
|
akshare/fund/fund_em.py,sha256=nX0VA5JeiF-zRr1J10X-U9-pJj5KFDUAbovN1DWjvTo,40450
|
|
89
|
-
akshare/fund/fund_etf_em.py,sha256=
|
|
89
|
+
akshare/fund/fund_etf_em.py,sha256=WdekgvHHyBOA5ON3x--7I4uTnp_2U09hooszHlDqfDI,18320
|
|
90
90
|
akshare/fund/fund_etf_sina.py,sha256=YV2KrqKMF_h8kgrywvWvRJx2oy62lhgizvHFk40E4Rk,7042
|
|
91
91
|
akshare/fund/fund_etf_ths.py,sha256=vb_jy0h2-Kz2dNWUrwBYxPB0MAotv0KZgnFhE98ohSM,3432
|
|
92
92
|
akshare/fund/fund_fee_em.py,sha256=fa_Nfr4GWx4FNzNY0blBPhIZ3fGW5qedQOuYIAlVsvE,4158
|
|
@@ -167,13 +167,13 @@ akshare/index/index_research_sw.py,sha256=Mm1YtiP-PXhDysJwmFidX3RZSZZ92AyXpjl_tV
|
|
|
167
167
|
akshare/index/index_spot.py,sha256=meTBTCp2DPVTX_N3qpCLtkI-0q3XhrJ3gndNugRBGKg,1767
|
|
168
168
|
akshare/index/index_stock_hk.py,sha256=nPFzRrjyiUpRK-OSDsdi5AFCKHNKqOVji6WJcQxOvNo,9781
|
|
169
169
|
akshare/index/index_stock_us_sina.py,sha256=IxOk4G49oasv7EfEQenL9-GLuelyUus6c4JPyRlaOzY,1551
|
|
170
|
-
akshare/index/index_stock_zh.py,sha256=
|
|
170
|
+
akshare/index/index_stock_zh.py,sha256=NpzOI3VudIMsIwEm549Mr3tQ4Dwa9IC0d6gb4h_FuEY,18725
|
|
171
171
|
akshare/index/index_stock_zh_csindex.py,sha256=sRVoDD-fitqAMuDs0XPm1oCz2nZ2QTkvNswL1WvXpwo,4164
|
|
172
172
|
akshare/index/index_sugar.py,sha256=B_Nj9Q6JP-Y_d7myZ0C79izTxxrbuZIp1Vv_CilVMOc,5006
|
|
173
173
|
akshare/index/index_sw.py,sha256=hETMmFszQb7JDY8UHjLK8szfwkr7Ui_6QcseOoEfxaI,10456
|
|
174
174
|
akshare/index/index_yw.py,sha256=6FF38kooLQulnMTqAd1__TNWip4XC1VA72k3T049xYc,4319
|
|
175
175
|
akshare/index/index_zh_a_scope.py,sha256=4Ej2Gnqtd66EBiI67sQZKhblcIJXdD5CoMIJYD_KwYU,1367
|
|
176
|
-
akshare/index/index_zh_em.py,sha256=
|
|
176
|
+
akshare/index/index_zh_em.py,sha256=o_GbQ6cfr7DSyyjnFnJYv_rlDVTQePq9kvoG3fAShUU,17617
|
|
177
177
|
akshare/interest_rate/__init__.py,sha256=O6dl1roEQUWwtXgRpa6wOABUU7MH0YmFDrkfhBpYOX4,81
|
|
178
178
|
akshare/interest_rate/interbank_rate_em.py,sha256=iKvmWxM4bpl9JgHNvavq0yhzMRq69BPEON1cGcWJrf4,4549
|
|
179
179
|
akshare/movie/__init__.py,sha256=YzijIIzvGpcc9hORC6qJSEK6vkjH5c4Docb5tQq2iHs,82
|
|
@@ -230,7 +230,7 @@ akshare/spot/spot_sge.py,sha256=sXaUGPm8yEXogssNFyFgTlnpf363g7s3U6xO4Zyvk9g,8213
|
|
|
230
230
|
akshare/stock/__init__.py,sha256=jSa9260d6aNZajaW68chI2mpPkDSXLOgi3eXrqo4MQ8,82
|
|
231
231
|
akshare/stock/cons.py,sha256=0oyUW5Pu-iQ3qgh-TFemM_O5f1fAwVe-PsI4Qa8EYpQ,42956
|
|
232
232
|
akshare/stock/stock_allotment_cninfo.py,sha256=OVjVdWp2XVRNbJvVgtgVVoBmPBJgBB4RyIIgA_9QHM8,6066
|
|
233
|
-
akshare/stock/stock_ask_bid_em.py,sha256=
|
|
233
|
+
akshare/stock/stock_ask_bid_em.py,sha256=nXQhYIpU4k7GUc7nthWC29zVS9GhYb9ppQTLD0gycF4,3438
|
|
234
234
|
akshare/stock/stock_board_concept_em.py,sha256=zCtHicBUcFN3GN2b5sKd0JV74KVSZKOOHDxS7v9DeCM,14042
|
|
235
235
|
akshare/stock/stock_board_industry_em.py,sha256=AfRVUVZrgSJXaoKAK81Ga-_m3hfv8YZzczBnnBdFq-I,16195
|
|
236
236
|
akshare/stock/stock_cg_equity_mortgage.py,sha256=Pui5aWKKPwGuKjF_GNpejDzsMGNPrxiaJviLz3x2e9I,3426
|
|
@@ -257,7 +257,7 @@ akshare/stock/stock_industry_pe_cninfo.py,sha256=0OjjsFGG90zJRZEBqaCsjKSpSAgrp3P
|
|
|
257
257
|
akshare/stock/stock_industry_sw.py,sha256=C0FjDg976EA0EksRS3sChbmJOZmOPEOzKCrHVs2YqTg,1441
|
|
258
258
|
akshare/stock/stock_info.py,sha256=AqzLzsTlYTSExBtyrZZBjI-D-VROj9e7Sq37WKHJ7XQ,16314
|
|
259
259
|
akshare/stock/stock_info_em.py,sha256=F-K8ZzWW70KTzShP82semh8RKklUEot2zxuzNDum20I,2615
|
|
260
|
-
akshare/stock/stock_intraday_em.py,sha256=
|
|
260
|
+
akshare/stock/stock_intraday_em.py,sha256=cm0qKVeCOqmjqd3WxqwjMCoa1uMA2zb98f6HX9_pIPQ,5905
|
|
261
261
|
akshare/stock/stock_intraday_sina.py,sha256=HMuAAO2Teu4NUrOcBvyJdxYgWx-51qJCdtcqFmFNQg8,2359
|
|
262
262
|
akshare/stock/stock_ipo_summary_cninfo.py,sha256=Ma-54GsOOhRWxilLH-Qmm0VVbpJQGf2XWKaJ8NBSgAY,3847
|
|
263
263
|
akshare/stock/stock_new_cninfo.py,sha256=EOuZowDLQSSHyPAwXcuPXbQkqhbz2nRBZsM7o2ZWILE,5725
|
|
@@ -311,7 +311,7 @@ akshare/stock_feature/stock_gdhs.py,sha256=Z6ZMy1A03BqMu9TghcIu2Sd_wwEtpIH7qawHu
|
|
|
311
311
|
akshare/stock_feature/stock_gdzjc_em.py,sha256=SHJH5iS3_NhvjTqRXF0vPooZl0s_ASeyZmNCC50ZYqs,4426
|
|
312
312
|
akshare/stock_feature/stock_gpzy_em.py,sha256=FgyjVgdoxrtMM7WwxdQJxK0mYGJklIHaT9KmMCFmEPM,17869
|
|
313
313
|
akshare/stock_feature/stock_gxl_lg.py,sha256=I8TpDEpFzadZSSyZisyIk6163mJlRxup91dmlBH4t4U,2641
|
|
314
|
-
akshare/stock_feature/stock_hist_em.py,sha256=
|
|
314
|
+
akshare/stock_feature/stock_hist_em.py,sha256=gFB9EUehXrCKvHd-QHyBLYesPEXq1YpJosoDYOPwUno,72528
|
|
315
315
|
akshare/stock_feature/stock_hist_tx.py,sha256=WpLsbkG2didSx7lYNkSbTWNTrLhUKbcopfD18WO2Rlc,3397
|
|
316
316
|
akshare/stock_feature/stock_hk_valuation_baidu.py,sha256=_sErx4UhNsSXJgXyPfrL0aPxkW53Mg1zH9gEKoziaCA,1968
|
|
317
317
|
akshare/stock_feature/stock_hot_xq.py,sha256=NmoH4x-0hiDztj-YwzMFVIyOICQ2wUUBbhjt91q-tq4,9112
|
|
@@ -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=j1MGYbZI2if2j_LY1S4FLsf4qfq4NwVqD5wmRlv5Log,832
|
|
383
|
-
akshare-1.15.
|
|
384
|
-
akshare-1.15.
|
|
385
|
-
akshare-1.15.
|
|
386
|
-
akshare-1.15.
|
|
387
|
-
akshare-1.15.
|
|
383
|
+
akshare-1.15.97.dist-info/LICENSE,sha256=mmSZCPgfHiVw34LXuFArd-SUgQtBJ_QsIlh-kWlDHfs,1073
|
|
384
|
+
akshare-1.15.97.dist-info/METADATA,sha256=oc2rkfI8yv9Rw9tnO2Flx5nmYdEPDAO9PxHaHVUbIn0,13679
|
|
385
|
+
akshare-1.15.97.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
|
386
|
+
akshare-1.15.97.dist-info/top_level.txt,sha256=jsf9ZzZPmHaISTVumQPsAw7vv7Yv-PdEVW70SMEelQQ,14
|
|
387
|
+
akshare-1.15.97.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|