akshare 1.14.28__py3-none-any.whl → 1.14.30__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/stock/stock_xq.py +27 -2
- akshare/stock_feature/stock_hist_em.py +3 -3
- {akshare-1.14.28.dist-info → akshare-1.14.30.dist-info}/METADATA +1 -1
- {akshare-1.14.28.dist-info → akshare-1.14.30.dist-info}/RECORD +8 -8
- {akshare-1.14.28.dist-info → akshare-1.14.30.dist-info}/LICENSE +0 -0
- {akshare-1.14.28.dist-info → akshare-1.14.30.dist-info}/WHEEL +0 -0
- {akshare-1.14.28.dist-info → akshare-1.14.30.dist-info}/top_level.txt +0 -0
akshare/__init__.py
CHANGED
|
@@ -2839,9 +2839,11 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
|
|
|
2839
2839
|
1.14.26 fix: fix futures_fees_info interface
|
|
2840
2840
|
1.14.27 fix: fix nlp_ownthink interface
|
|
2841
2841
|
1.14.28 fix: fix news_trade_notify_dividend_baidu interface
|
|
2842
|
+
1.14.29 fix: fix stock_individual_spot_xq interface
|
|
2843
|
+
1.14.30 fix: fix stock_us_hist_min_em interface
|
|
2842
2844
|
"""
|
|
2843
2845
|
|
|
2844
|
-
__version__ = "1.14.
|
|
2846
|
+
__version__ = "1.14.30"
|
|
2845
2847
|
__author__ = "AKFamily"
|
|
2846
2848
|
|
|
2847
2849
|
import sys
|
akshare/stock/stock_xq.py
CHANGED
|
@@ -6,12 +6,32 @@ Desc: 雪球-行情中心-个股
|
|
|
6
6
|
https://xueqiu.com/S/SH513520
|
|
7
7
|
"""
|
|
8
8
|
|
|
9
|
+
from datetime import datetime
|
|
9
10
|
import re
|
|
10
11
|
|
|
11
12
|
import pandas as pd
|
|
12
13
|
import requests
|
|
13
14
|
|
|
14
15
|
|
|
16
|
+
def _convert_timestamp(timestamp_ms):
|
|
17
|
+
"""
|
|
18
|
+
将以毫秒为单位的时间戳转换为日期和时间,并保留到秒。
|
|
19
|
+
|
|
20
|
+
参数:
|
|
21
|
+
timestamp_ms (int): 以毫秒为单位的时间戳
|
|
22
|
+
|
|
23
|
+
返回:
|
|
24
|
+
datetime: 对应的日期和时间,保留到秒
|
|
25
|
+
"""
|
|
26
|
+
# 将毫秒转换为秒
|
|
27
|
+
timestamp_s = timestamp_ms / 1000
|
|
28
|
+
|
|
29
|
+
# 使用 fromtimestamp 方法将时间戳转换为 datetime 对象
|
|
30
|
+
datetime_obj = datetime.fromtimestamp(timestamp_s)
|
|
31
|
+
|
|
32
|
+
return datetime_obj.strftime("%Y-%m-%d %H:%M:%S")
|
|
33
|
+
|
|
34
|
+
|
|
15
35
|
def stock_individual_spot_xq(
|
|
16
36
|
symbol: str = "SH600000",
|
|
17
37
|
timeout: float = None,
|
|
@@ -78,9 +98,10 @@ def stock_individual_spot_xq(
|
|
|
78
98
|
"turnover_rate": "周转率",
|
|
79
99
|
"unit_nav": "单位净值",
|
|
80
100
|
"volume": "成交量",
|
|
101
|
+
"time": "时间",
|
|
81
102
|
}
|
|
82
|
-
json_data = r.json()
|
|
83
|
-
temp_df = pd.json_normalize(json_data)
|
|
103
|
+
json_data = r.json()
|
|
104
|
+
temp_df = pd.json_normalize(json_data["data"]["quote"])
|
|
84
105
|
temp_df.columns = [
|
|
85
106
|
*map(
|
|
86
107
|
lambda x: column_name_map[x] if x in column_name_map.keys() else x,
|
|
@@ -97,6 +118,10 @@ def stock_individual_spot_xq(
|
|
|
97
118
|
]
|
|
98
119
|
temp_df = temp_df.T.reset_index()
|
|
99
120
|
temp_df.columns = ["item", "value"]
|
|
121
|
+
temp_df.loc[temp_df["item"] == "时间", "value"] = temp_df.loc[
|
|
122
|
+
temp_df["item"] == "时间", "value"
|
|
123
|
+
].apply(lambda x: _convert_timestamp(int(x)))
|
|
124
|
+
|
|
100
125
|
return temp_df
|
|
101
126
|
|
|
102
127
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
2
|
# -*- coding:utf-8 -*-
|
|
3
3
|
"""
|
|
4
|
-
Date: 2024/
|
|
4
|
+
Date: 2024/7/13 18:00
|
|
5
5
|
Desc: 东方财富网-行情首页-沪深京 A 股
|
|
6
6
|
https://quote.eastmoney.com/
|
|
7
7
|
"""
|
|
@@ -1872,7 +1872,7 @@ def stock_us_hist_min_em(
|
|
|
1872
1872
|
"secid": f"{symbol.split('.')[0]}.{symbol.split('.')[1]}",
|
|
1873
1873
|
"_": "1623766962675",
|
|
1874
1874
|
}
|
|
1875
|
-
r = requests.get(url,
|
|
1875
|
+
r = requests.get(url, params=params, timeout=15)
|
|
1876
1876
|
data_json = r.json()
|
|
1877
1877
|
if not data_json["data"]["trends"]:
|
|
1878
1878
|
return pd.DataFrame()
|
|
@@ -1897,7 +1897,7 @@ def stock_us_hist_min_em(
|
|
|
1897
1897
|
temp_df["成交量"] = pd.to_numeric(temp_df["成交量"], errors="coerce")
|
|
1898
1898
|
temp_df["成交额"] = pd.to_numeric(temp_df["成交额"], errors="coerce")
|
|
1899
1899
|
temp_df["最新价"] = pd.to_numeric(temp_df["最新价"], errors="coerce")
|
|
1900
|
-
temp_df["时间"] = pd.to_datetime(temp_df["时间"]).astype(str)
|
|
1900
|
+
temp_df["时间"] = pd.to_datetime(temp_df["时间"], errors="coerce").astype(str)
|
|
1901
1901
|
return temp_df
|
|
1902
1902
|
|
|
1903
1903
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
akshare/__init__.py,sha256=
|
|
1
|
+
akshare/__init__.py,sha256=gZjCh4_xtzsji7DR1iSNIDwALya3EPInUkLwW7NAROI,179021
|
|
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
|
|
@@ -275,7 +275,7 @@ akshare/stock/stock_us_js.py,sha256=wwZpRvVHqjxwd0cb2O5vtRW8Zw90Kdl5O4XNwoevN64,
|
|
|
275
275
|
akshare/stock/stock_us_pink.py,sha256=jgkEjPm_qa4zSN1MH0unHJopSkcF-8Rqlp5Kus2KaQ8,3062
|
|
276
276
|
akshare/stock/stock_us_sina.py,sha256=Nub-2WNjZ_ujgJwjnWlHM5EPBFd7Bc89I7UEvttrkYg,8185
|
|
277
277
|
akshare/stock/stock_weibo_nlp.py,sha256=eM7ofsNSrKiYeS0g38Qj9CxT6dkJZrn_pmziIiTqp4U,3286
|
|
278
|
-
akshare/stock/stock_xq.py,sha256=
|
|
278
|
+
akshare/stock/stock_xq.py,sha256=oeBBrqwcTXfixHuGmpoMbtlNQA57aSSe-fFA3v92QQY,4585
|
|
279
279
|
akshare/stock/stock_zh_a_sina.py,sha256=wm-Ko8Q1I71lAXd8zRlHK72ZPe9vlDjD66g-XxZARX8,18881
|
|
280
280
|
akshare/stock/stock_zh_a_special.py,sha256=RRXkeZtRWm_maIPWgxvhBdX6eNybECjhSuEesZHRFJI,10294
|
|
281
281
|
akshare/stock/stock_zh_a_tick_tx.py,sha256=TJUAWLKAeoLEaVVJQlj0t-1smZGoAO0X0rPsUPVhZZ4,2131
|
|
@@ -311,7 +311,7 @@ akshare/stock_feature/stock_gdhs.py,sha256=Fkrcs1HEOFNEXdQL4fO2-bMDvKV-Shu-fGECk
|
|
|
311
311
|
akshare/stock_feature/stock_gdzjc_em.py,sha256=SHJH5iS3_NhvjTqRXF0vPooZl0s_ASeyZmNCC50ZYqs,4426
|
|
312
312
|
akshare/stock_feature/stock_gpzy_em.py,sha256=AUl0NCqBixhvIX3Y_cQxu3tKKyVjuYwUDoMj3tCfwk0,16763
|
|
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=GrOKlTN27TDDgA8ygSfOUjWqWluBBpK-_P1z3ARbDJw,69201
|
|
315
315
|
akshare/stock_feature/stock_hist_tx.py,sha256=WpLsbkG2didSx7lYNkSbTWNTrLhUKbcopfD18WO2Rlc,3397
|
|
316
316
|
akshare/stock_feature/stock_hk_valuation_baidu.py,sha256=i3bPliFkPZcfXvuxuefSWFLC_DoF9ILdPBEyM0A9Lg4,1715
|
|
317
317
|
akshare/stock_feature/stock_hot_xq.py,sha256=NmoH4x-0hiDztj-YwzMFVIyOICQ2wUUBbhjt91q-tq4,9112
|
|
@@ -378,8 +378,8 @@ akshare/utils/token_process.py,sha256=K4rGXjh_tgugbRcyOK2h2x0jP3PT65IIK7nxhUKhOe
|
|
|
378
378
|
akshare/utils/tqdm.py,sha256=MuPNwcswkOGjwWQOMWXi9ZvQ_RmW4obCWRj2i7HM7FE,847
|
|
379
379
|
tests/__init__.py,sha256=gNzhlO0UPjFq6Ieb38kaVIODXv4cTDByrdohAZnDYt4,82
|
|
380
380
|
tests/test_func.py,sha256=tfvy_YnYmDra2dkKZ5JvprU1gNW5X9T634PszdSdH1A,944
|
|
381
|
-
akshare-1.14.
|
|
382
|
-
akshare-1.14.
|
|
383
|
-
akshare-1.14.
|
|
384
|
-
akshare-1.14.
|
|
385
|
-
akshare-1.14.
|
|
381
|
+
akshare-1.14.30.dist-info/LICENSE,sha256=mmSZCPgfHiVw34LXuFArd-SUgQtBJ_QsIlh-kWlDHfs,1073
|
|
382
|
+
akshare-1.14.30.dist-info/METADATA,sha256=U01SFsemXoqTabtkHwpgzv2BmACRXuNULDVqqAspHFw,14010
|
|
383
|
+
akshare-1.14.30.dist-info/WHEEL,sha256=Z4pYXqR_rTB7OWNDYFOm1qRk0RX6GFP2o8LgvP453Hk,91
|
|
384
|
+
akshare-1.14.30.dist-info/top_level.txt,sha256=jsf9ZzZPmHaISTVumQPsAw7vv7Yv-PdEVW70SMEelQQ,14
|
|
385
|
+
akshare-1.14.30.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|