akshare 1.16.4__py3-none-any.whl → 1.16.6__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 CHANGED
@@ -3013,9 +3013,11 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
3013
3013
  1.16.2 fix: fix stock_board_industry_hist_em interface
3014
3014
  1.16.3 fix: fix stock_zh_index_spot_em interface
3015
3015
  1.16.4 fix: fix stock_hk_ggt_components_em interface
3016
+ 1.16.5 fix: fix stock_sector_fund_flow_rank interface
3017
+ 1.16.6 fix: fix stock_sgt_reference_exchange_rate_sse interface
3016
3018
  """
3017
3019
 
3018
- __version__ = "1.16.4"
3020
+ __version__ = "1.16.6"
3019
3021
  __author__ = "AKFamily"
3020
3022
 
3021
3023
  import sys
@@ -470,7 +470,7 @@ def stock_sector_fund_flow_rank(
470
470
  "pn": "1",
471
471
  "pz": "5000",
472
472
  "po": "1",
473
- "np": "1",
473
+ "np": "2",
474
474
  "ut": "b2884a393a59ad64002292a3e90d46a5",
475
475
  "fltt": "2",
476
476
  "invt": "2",
@@ -483,9 +483,9 @@ def stock_sector_fund_flow_rank(
483
483
  "_": int(time.time() * 1000),
484
484
  }
485
485
  r = requests.get(url, params=params, headers=headers)
486
- text_data = r.text
487
- json_data = json.loads(text_data[text_data.find("{") : -2])
488
- temp_df = pd.DataFrame(json_data["data"]["diff"])
486
+ data_text = r.text
487
+ data_json = json.loads(data_text[data_text.find("{") : -2])
488
+ temp_df = pd.DataFrame(data_json["data"]["diff"]).T
489
489
  if indicator == "今日":
490
490
  temp_df.columns = [
491
491
  "-",
@@ -1,12 +1,14 @@
1
1
  # -*- coding:utf-8 -*-
2
2
  # !/usr/bin/env python
3
3
  """
4
- Date: 2022/9/30 15:20
4
+ Date: 2025/2/19 22:00
5
5
  Desc: 参考汇率和结算汇率
6
6
  深港通-港股通业务信息
7
7
  深港通-港股通业务信息: https://www.szse.cn/szhk/hkbussiness/exchangerate/index.html
8
- 沪港通-港股通信息披露: http://www.sse.com.cn/services/hkexsc/disclo/ratios/
8
+ 沪港通-港股通信息披露: https://www.sse.com.cn/services/hkexsc/disclo/ratios/
9
9
  """
10
+
11
+ import warnings
10
12
  from datetime import datetime
11
13
 
12
14
  import pandas as pd
@@ -22,20 +24,23 @@ def stock_sgt_settlement_exchange_rate_szse() -> pd.DataFrame:
22
24
  """
23
25
  url = "https://www.szse.cn/api/report/ShowReport"
24
26
  params = {
25
- 'SHOWTYPE': 'xlsx',
26
- 'CATALOGID': 'SGT_LSHL',
27
- 'TABKEY': 'tab2',
28
- 'random': '0.9184251620553985',
27
+ "SHOWTYPE": "xlsx",
28
+ "CATALOGID": "SGT_LSHL",
29
+ "TABKEY": "tab2",
30
+ "random": "0.9184251620553985",
29
31
  }
30
32
  r = requests.get(url, params=params)
31
- import warnings
32
33
  with warnings.catch_warnings(record=True):
33
34
  warnings.simplefilter("always")
34
35
  temp_df = pd.read_excel(r.content, engine="openpyxl")
35
- temp_df.sort_values('适用日期', inplace=True, ignore_index=True)
36
- temp_df['适用日期'] = pd.to_datetime(temp_df['适用日期']).dt.date
37
- temp_df['买入结算汇兑比率'] = pd.to_numeric(temp_df['买入结算汇兑比率'], errors='coerce')
38
- temp_df['卖出结算汇兑比率'] = pd.to_numeric(temp_df['卖出结算汇兑比率'], errors='coerce')
36
+ temp_df.sort_values(by="适用日期", inplace=True, ignore_index=True)
37
+ temp_df["适用日期"] = pd.to_datetime(temp_df["适用日期"], errors="coerce").dt.date
38
+ temp_df["买入结算汇兑比率"] = pd.to_numeric(
39
+ temp_df["买入结算汇兑比率"], errors="coerce"
40
+ )
41
+ temp_df["卖出结算汇兑比率"] = pd.to_numeric(
42
+ temp_df["卖出结算汇兑比率"], errors="coerce"
43
+ )
39
44
  return temp_df
40
45
 
41
46
 
@@ -48,123 +53,148 @@ def stock_sgt_reference_exchange_rate_szse() -> pd.DataFrame:
48
53
  """
49
54
  url = "https://www.szse.cn/api/report/ShowReport"
50
55
  params = {
51
- 'SHOWTYPE': 'xlsx',
52
- 'CATALOGID': 'SGT_LSHL',
53
- 'TABKEY': 'tab1',
54
- 'random': '0.9184251620553985',
56
+ "SHOWTYPE": "xlsx",
57
+ "CATALOGID": "SGT_LSHL",
58
+ "TABKEY": "tab1",
59
+ "random": "0.9184251620553985",
55
60
  }
56
61
  r = requests.get(url, params=params)
57
- import warnings
58
62
  with warnings.catch_warnings(record=True):
59
63
  warnings.simplefilter("always")
60
64
  temp_df = pd.read_excel(r.content, engine="openpyxl")
61
- temp_df.sort_values('适用日期', inplace=True, ignore_index=True)
62
- temp_df['适用日期'] = pd.to_datetime(temp_df['适用日期']).dt.date
63
- temp_df['参考汇率买入价'] = pd.to_numeric(temp_df['参考汇率买入价'], errors='coerce')
64
- temp_df['参考汇率卖出价'] = pd.to_numeric(temp_df['参考汇率卖出价'], errors='coerce')
65
+ temp_df.sort_values(by="适用日期", inplace=True, ignore_index=True)
66
+ temp_df["适用日期"] = pd.to_datetime(temp_df["适用日期"], errors="coerce").dt.date
67
+ temp_df["参考汇率买入价"] = pd.to_numeric(
68
+ temp_df["参考汇率买入价"], errors="coerce"
69
+ )
70
+ temp_df["参考汇率卖出价"] = pd.to_numeric(
71
+ temp_df["参考汇率卖出价"], errors="coerce"
72
+ )
65
73
  return temp_df
66
74
 
67
75
 
68
76
  def stock_sgt_reference_exchange_rate_sse() -> pd.DataFrame:
69
77
  """
70
78
  沪港通-港股通信息披露-参考汇率
71
- http://www.sse.com.cn/services/hkexsc/disclo/ratios/
79
+ https://www.sse.com.cn/services/hkexsc/disclo/ratios/
72
80
  :return: 参考汇率
73
81
  :rtype: pandas.DataFrame
74
82
  """
75
83
  current_date = datetime.now().date().isoformat().replace("-", "")
76
- url = "http://query.sse.com.cn/commonSoaQuery.do"
84
+ url = "https://query.sse.com.cn/commonSoaQuery.do"
77
85
  params = {
78
- 'isPagination': 'true',
79
- 'updateDate': '20120601',
80
- 'updateDateEnd': current_date,
81
- 'sqlId': 'FW_HGT_GGTHL',
82
- 'pageHelp.cacheSize': '1',
83
- 'pageHelp.pageSize': '10000',
84
- 'pageHelp.pageNo': '1',
85
- 'pageHelp.beginPage': '1',
86
- 'pageHelp.endPage': '1',
87
- '_': '1664523262778',
86
+ "isPagination": "true",
87
+ "updateDate": "20120601",
88
+ "updateDateEnd": current_date,
89
+ "sqlId": "FW_HGT_GGTHL",
90
+ "pageHelp.cacheSize": "1",
91
+ "pageHelp.pageSize": "10000",
92
+ "pageHelp.pageNo": "1",
93
+ "pageHelp.beginPage": "1",
94
+ "pageHelp.endPage": "1",
95
+ "_": "1664523262778",
88
96
  }
89
97
  headers = {
90
- 'Host': 'query.sse.com.cn',
91
- 'Referer': 'http://www.sse.com.cn/',
92
- 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36'
98
+ "Host": "query.sse.com.cn",
99
+ "Referer": "https://www.sse.com.cn/",
100
+ "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
101
+ "Chrome/105.0.0.0 Safari/537.36",
93
102
  }
94
103
  r = requests.get(url, params=params, headers=headers)
95
104
  data_json = r.json()
96
- temp_df = pd.DataFrame(data_json['result'])
97
- temp_df.rename(columns={
98
- 'currencyType': "货币种类",
99
- 'buyPrice': "参考汇率买入价",
100
- 'updateDate': "-",
101
- 'validDate': "适用日期",
102
- 'sellPrice': "参考汇率卖出价"
103
- }, inplace=True)
104
- temp_df = temp_df[[
105
- "适用日期",
106
- "参考汇率买入价",
107
- "参考汇率卖出价",
108
- "货币种类",
109
- ]]
110
- temp_df.sort_values('适用日期', inplace=True, ignore_index=True)
111
- temp_df['适用日期'] = pd.to_datetime(temp_df['适用日期']).dt.date
112
- temp_df['参考汇率买入价'] = pd.to_numeric(temp_df['参考汇率买入价'], errors='coerce')
113
- temp_df['参考汇率卖出价'] = pd.to_numeric(temp_df['参考汇率卖出价'], errors='coerce')
105
+ temp_df = pd.DataFrame(data_json["result"])
106
+ temp_df.rename(
107
+ columns={
108
+ "currencyType": "货币种类",
109
+ "buyPrice": "参考汇率买入价",
110
+ "updateDate": "-",
111
+ "validDate": "适用日期",
112
+ "sellPrice": "参考汇率卖出价",
113
+ },
114
+ inplace=True,
115
+ )
116
+ temp_df = temp_df[
117
+ [
118
+ "适用日期",
119
+ "参考汇率买入价",
120
+ "参考汇率卖出价",
121
+ "货币种类",
122
+ ]
123
+ ]
124
+ temp_df.sort_values("适用日期", inplace=True, ignore_index=True)
125
+ temp_df["适用日期"] = pd.to_datetime(temp_df["适用日期"], errors="coerce").dt.date
126
+ temp_df["参考汇率买入价"] = pd.to_numeric(
127
+ temp_df["参考汇率买入价"], errors="coerce"
128
+ )
129
+ temp_df["参考汇率卖出价"] = pd.to_numeric(
130
+ temp_df["参考汇率卖出价"], errors="coerce"
131
+ )
114
132
  return temp_df
115
133
 
116
134
 
117
135
  def stock_sgt_settlement_exchange_rate_sse() -> pd.DataFrame:
118
136
  """
119
137
  沪港通-港股通信息披露-结算汇兑
120
- http://www.sse.com.cn/services/hkexsc/disclo/ratios/
138
+ https://www.sse.com.cn/services/hkexsc/disclo/ratios/
121
139
  :return: 结算汇兑比率
122
140
  :rtype: pandas.DataFrame
123
141
  """
124
142
  current_date = datetime.now().date().isoformat().replace("-", "")
125
- url = "http://query.sse.com.cn/commonSoaQuery.do"
143
+ url = "https://query.sse.com.cn/commonSoaQuery.do"
126
144
  params = {
127
- 'isPagination': 'true',
128
- 'updateDate': '20120601',
129
- 'updateDateEnd': current_date,
130
- 'sqlId': 'FW_HGT_JSHDBL',
131
- 'pageHelp.cacheSize': '1',
132
- 'pageHelp.pageSize': '10000',
133
- 'pageHelp.pageNo': '1',
134
- 'pageHelp.beginPage': '1',
135
- 'pageHelp.endPage': '1',
136
- '_': '1664523262778',
145
+ "isPagination": "true",
146
+ "updateDate": "20120601",
147
+ "updateDateEnd": current_date,
148
+ "sqlId": "FW_HGT_JSHDBL",
149
+ "pageHelp.cacheSize": "1",
150
+ "pageHelp.pageSize": "10000",
151
+ "pageHelp.pageNo": "1",
152
+ "pageHelp.beginPage": "1",
153
+ "pageHelp.endPage": "1",
154
+ "_": "1664523262778",
137
155
  }
138
156
  headers = {
139
- 'Host': 'query.sse.com.cn',
140
- 'Referer': 'http://www.sse.com.cn/',
141
- 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36'
157
+ "Host": "query.sse.com.cn",
158
+ "Referer": "https://www.sse.com.cn/",
159
+ "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
160
+ "Chrome/105.0.0.0 Safari/537.36",
142
161
  }
143
162
  r = requests.get(url, params=params, headers=headers)
144
163
  data_json = r.json()
145
- temp_df = pd.DataFrame(data_json['result'])
146
- temp_df.rename(columns={
147
- 'currencyType': "货币种类",
148
- 'buyPrice': "买入结算汇兑比率",
149
- 'updateDate': "-",
150
- 'validDate': "适用日期",
151
- 'sellPrice': "卖出结算汇兑比率"
152
- }, inplace=True)
153
- temp_df = temp_df[[
154
- "适用日期",
155
- "买入结算汇兑比率",
156
- "卖出结算汇兑比率",
157
- "货币种类",
158
- ]]
159
- temp_df.sort_values('适用日期', inplace=True, ignore_index=True)
160
- temp_df['适用日期'] = pd.to_datetime(temp_df['适用日期']).dt.date
161
- temp_df['买入结算汇兑比率'] = pd.to_numeric(temp_df['买入结算汇兑比率'], errors='coerce')
162
- temp_df['卖出结算汇兑比率'] = pd.to_numeric(temp_df['卖出结算汇兑比率'], errors='coerce')
164
+ temp_df = pd.DataFrame(data_json["result"])
165
+ temp_df.rename(
166
+ columns={
167
+ "currencyType": "货币种类",
168
+ "buyPrice": "买入结算汇兑比率",
169
+ "updateDate": "-",
170
+ "validDate": "适用日期",
171
+ "sellPrice": "卖出结算汇兑比率",
172
+ },
173
+ inplace=True,
174
+ )
175
+ temp_df = temp_df[
176
+ [
177
+ "适用日期",
178
+ "买入结算汇兑比率",
179
+ "卖出结算汇兑比率",
180
+ "货币种类",
181
+ ]
182
+ ]
183
+ temp_df.sort_values("适用日期", inplace=True, ignore_index=True)
184
+ temp_df["适用日期"] = pd.to_datetime(temp_df["适用日期"], errors="coerce").dt.date
185
+ temp_df["买入结算汇兑比率"] = pd.to_numeric(
186
+ temp_df["买入结算汇兑比率"], errors="coerce"
187
+ )
188
+ temp_df["卖出结算汇兑比率"] = pd.to_numeric(
189
+ temp_df["卖出结算汇兑比率"], errors="coerce"
190
+ )
163
191
  return temp_df
164
192
 
165
193
 
166
194
  if __name__ == "__main__":
167
- stock_sgt_settlement_exchange_rate_szse_df = stock_sgt_settlement_exchange_rate_szse()
195
+ stock_sgt_settlement_exchange_rate_szse_df = (
196
+ stock_sgt_settlement_exchange_rate_szse()
197
+ )
168
198
  print(stock_sgt_settlement_exchange_rate_szse_df)
169
199
 
170
200
  stock_sgt_reference_exchange_rate_szse_df = stock_sgt_reference_exchange_rate_szse()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: akshare
3
- Version: 1.16.4
3
+ Version: 1.16.6
4
4
  Summary: AKShare is an elegant and simple financial data interface library for Python, built for human beings!
5
5
  Home-page: https://github.com/akfamily/akshare
6
6
  Author: AKFamily
@@ -1,4 +1,4 @@
1
- akshare/__init__.py,sha256=o5znWn0GqKnvIikYVRyipA1lyjbleZBb1mKtZDU_BqM,187726
1
+ akshare/__init__.py,sha256=2S7vULTlyBglBAcI-0WFHB1gLaY1HgEcGdtWLv1Wy2c,187844
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
@@ -238,7 +238,7 @@ akshare/stock/stock_cg_guarantee.py,sha256=ts7qcQhhyN1PHB7Q4XlMn38HhfVvubOvky9RZ
238
238
  akshare/stock/stock_cg_lawsuit.py,sha256=6Y92pPw0JgyrInteqHuU07G1jwmdX2wjaDtrJN8y6Hg,4129
239
239
  akshare/stock/stock_dividend_cninfo.py,sha256=_vipLQu94qBDoPkaIWZKRFA0mFfgroUMnn5EdLcjAc4,3195
240
240
  akshare/stock/stock_dzjy_em.py,sha256=QMo2w-_I9UnmCr1IXk_InFeW5ok_GpRE9HdWFDUdGyM,22556
241
- akshare/stock/stock_fund_em.py,sha256=jFTqmiJMBTlR1vN6xj-tqMYxAQn0ZwAWLA2L7pbkg20,48918
241
+ akshare/stock/stock_fund_em.py,sha256=ZtDX_llsN4Wxm6IcoGMLV0Xoy0n6CIuDpXVps5OBQS8,48920
242
242
  akshare/stock/stock_fund_hold.py,sha256=iFEmRFber7MF6aPi0QOJxpvYjO7I26KouUvC-xTQdCk,6056
243
243
  akshare/stock/stock_gsrl_em.py,sha256=oy5vO681ZPTEehZgz10T8jgIQ8dNm_E7MXGr1PGoHqI,1951
244
244
  akshare/stock/stock_hk_famous.py,sha256=g-p1cdRibei9fw2HEMPyarLP-wT4bFwIK7Mxi77jH9E,3015
@@ -316,7 +316,7 @@ akshare/stock_feature/stock_hist_tx.py,sha256=WpLsbkG2didSx7lYNkSbTWNTrLhUKbcopf
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
318
318
  akshare/stock_feature/stock_hsgt_em.py,sha256=A10L3LX44YrkcYi7kT9Y0-XK_r0mv9c50x5emshh25Q,56690
319
- akshare/stock_feature/stock_hsgt_exchange_rate.py,sha256=YvhvdGx1nBJ_1swos1YNOtzy0GMFYo8MgNBh5QKphtE,6838
319
+ akshare/stock_feature/stock_hsgt_exchange_rate.py,sha256=-oJZ83FUQrNJX_4GB5hS562IdrfJbCwr0d5ioYXtPrQ,7212
320
320
  akshare/stock_feature/stock_hsgt_min_em.py,sha256=KLeez7MQwBAcO-RT7n41LOikUfvXDGK0-G1n9av5mtY,2883
321
321
  akshare/stock_feature/stock_info.py,sha256=AQ4ZMXAks3qCxk3lbH_YpsqC-qQHpZ49UGk0Mm08d2E,9192
322
322
  akshare/stock_feature/stock_inner_trade_xq.py,sha256=jsARS5It6_UNn3WL8vnTK4F90Rx1dMvarxtiVbzOLrM,2682
@@ -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.16.4.dist-info/LICENSE,sha256=mmSZCPgfHiVw34LXuFArd-SUgQtBJ_QsIlh-kWlDHfs,1073
384
- akshare-1.16.4.dist-info/METADATA,sha256=GkFQ7e-yOyZ1_FCqJuNJ_rKhRjX8wUFd0sp3C-rKB8M,13678
385
- akshare-1.16.4.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
386
- akshare-1.16.4.dist-info/top_level.txt,sha256=jsf9ZzZPmHaISTVumQPsAw7vv7Yv-PdEVW70SMEelQQ,14
387
- akshare-1.16.4.dist-info/RECORD,,
383
+ akshare-1.16.6.dist-info/LICENSE,sha256=mmSZCPgfHiVw34LXuFArd-SUgQtBJ_QsIlh-kWlDHfs,1073
384
+ akshare-1.16.6.dist-info/METADATA,sha256=kSSJUrNux_8cz8o8Wo80-BY6S9IfOkJGuvlF3NLz5qo,13678
385
+ akshare-1.16.6.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
386
+ akshare-1.16.6.dist-info/top_level.txt,sha256=jsf9ZzZPmHaISTVumQPsAw7vv7Yv-PdEVW70SMEelQQ,14
387
+ akshare-1.16.6.dist-info/RECORD,,