akshare 1.15.66__py3-none-any.whl → 1.15.67__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 CHANGED
@@ -2976,9 +2976,10 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
2976
2976
  1.15.64 fix: fix stock_zh_index_value_csindex interface
2977
2977
  1.15.65 fix: fix option_czce_daily interface
2978
2978
  1.15.66 fix: fix fund_etf_dividend_sina interface
2979
+ 1.15.67 fix: fix stock_hold_change_cninfo interface
2979
2980
  """
2980
2981
 
2981
- __version__ = "1.15.66"
2982
+ __version__ = "1.15.67"
2982
2983
  __author__ = "AKFamily"
2983
2984
 
2984
2985
  import sys
@@ -3000,6 +3001,11 @@ if sys.version_info < (3, 9):
3000
3001
 
3001
3002
  del sys
3002
3003
 
3004
+ """
3005
+ 巨潮资讯-数据中心-专题统计-股东股本-股本变动
3006
+ """
3007
+ from akshare.stock.stock_hold_control_cninfo import stock_hold_change_cninfo
3008
+
3003
3009
  """
3004
3010
  基金费率
3005
3011
  """
@@ -195,6 +195,85 @@ def stock_hold_management_detail_cninfo(symbol: str = "增持") -> pd.DataFrame:
195
195
  return temp_df
196
196
 
197
197
 
198
+ def stock_hold_change_cninfo(symbol: str = "全部") -> pd.DataFrame:
199
+ """
200
+ 巨潮资讯-数据中心-专题统计-股东股本-股本变动
201
+ https://webapi.cninfo.com.cn/#/thematicStatistics
202
+ :param symbol: choice of {"深市主板", "沪市", "创业板", "科创板", "北交所", "全部"}
203
+ :type symbol: str
204
+ :return: 股本变动
205
+ :rtype: pandas.DataFrame
206
+ """
207
+ symbol_map = {
208
+ "深市主板": "012002",
209
+ "沪市": "012001",
210
+ "创业板": "012015",
211
+ "科创板": "012029",
212
+ "北交所": "012046",
213
+ "全部": "",
214
+ }
215
+ url = "https://webapi.cninfo.com.cn/api/sysapi/p_sysapi1029"
216
+ js_code = py_mini_racer.MiniRacer()
217
+ js_content = _get_file_content_cninfo("cninfo.js")
218
+ js_code.eval(js_content)
219
+ mcode = js_code.call("getResCode1")
220
+ headers = {
221
+ "Accept": "/",
222
+ "Accept-Enckey": mcode,
223
+ "Accept-Encoding": "gzip, deflate",
224
+ "Accept-Language": "zh-CN,zh;q=0.9,en;q=0.8",
225
+ "Cache-Control": "no-cache",
226
+ "Content-Length": "0",
227
+ "Host": "webapi.cninfo.com.cn",
228
+ "Origin": "https://webapi.cninfo.com.cn",
229
+ "Pragma": "no-cache",
230
+ "Proxy-Connection": "keep-alive",
231
+ "Referer": "https://webapi.cninfo.com.cn/",
232
+ "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
233
+ "Chrome/93.0.4577.63 Safari/537.36",
234
+ "X-Requested-With": "XMLHttpRequest",
235
+ }
236
+ params = {
237
+ "market": symbol_map[symbol],
238
+ }
239
+ r = requests.get(url, headers=headers, params=params)
240
+ data_json = r.json()
241
+ temp_df = pd.DataFrame(data_json["records"])
242
+ temp_df.columns = [
243
+ "已流通股份",
244
+ "总股本",
245
+ "交易市场",
246
+ "证券简称",
247
+ "公告日期",
248
+ "变动原因",
249
+ "证券代码",
250
+ "变动日期",
251
+ "流通受限股份",
252
+ "已流通比例",
253
+ ]
254
+ temp_df = temp_df[
255
+ [
256
+ "证券代码",
257
+ "证券简称",
258
+ "交易市场",
259
+ "公告日期",
260
+ "变动日期",
261
+ "变动原因",
262
+ "总股本",
263
+ "已流通股份",
264
+ "已流通比例",
265
+ "流通受限股份",
266
+ ]
267
+ ]
268
+ temp_df["变动日期"] = pd.to_datetime(temp_df["变动日期"], errors="coerce").dt.date
269
+ temp_df["公告日期"] = pd.to_datetime(temp_df["公告日期"], errors="coerce").dt.date
270
+ temp_df["总股本"] = pd.to_numeric(temp_df["总股本"], errors="coerce")
271
+ temp_df["已流通股份"] = pd.to_numeric(temp_df["已流通股份"], errors="coerce")
272
+ temp_df["已流通比例"] = pd.to_numeric(temp_df["已流通比例"], errors="coerce")
273
+ temp_df["流通受限股份"] = pd.to_numeric(temp_df["流通受限股份"], errors="coerce")
274
+ return temp_df
275
+
276
+
198
277
  if __name__ == "__main__":
199
278
  stock_hold_control_cninfo_df = stock_hold_control_cninfo(symbol="全部")
200
279
  print(stock_hold_control_cninfo_df)
@@ -203,3 +282,6 @@ if __name__ == "__main__":
203
282
  symbol="增持"
204
283
  )
205
284
  print(stock_hold_management_detail_cninfo_df)
285
+
286
+ stock_hold_change_cninfo_df = stock_hold_change_cninfo(symbol="全部")
287
+ print(stock_hold_change_cninfo_df)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: akshare
3
- Version: 1.15.66
3
+ Version: 1.15.67
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=W-0PqOedEFTzY7utCqr6lS4ENUQq4SA6SaYtQtJ9-5o,185637
1
+ akshare/__init__.py,sha256=iHal0YVSSEaZA2Utd3s3IAKHnWDM9vY_IJKapTYwNKs,185840
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
@@ -243,7 +243,7 @@ akshare/stock/stock_hk_famous.py,sha256=g-p1cdRibei9fw2HEMPyarLP-wT4bFwIK7Mxi77j
243
243
  akshare/stock/stock_hk_fhpx_ths.py,sha256=68soKJIOMoAGuCvJIMZBVU-2wL_umtv67SuqVzl2C14,2191
244
244
  akshare/stock/stock_hk_hot_rank_em.py,sha256=IhLGahWXfYPQRrCoB1Ph7DRbs_39BcrmXpIgXgEkttg,4746
245
245
  akshare/stock/stock_hk_sina.py,sha256=sRX977vZ_nbuJ2Y7a8WA6efHp79h2ikocH3xfZ1hLfg,9586
246
- akshare/stock/stock_hold_control_cninfo.py,sha256=NpUDtfYCDQGhqX1ZAL8Uy2yslZ2zc15YBrzOt5_4k6o,7065
246
+ akshare/stock/stock_hold_control_cninfo.py,sha256=J1CGX1tZ22UJdOWAkED19o7vdE10Hke91cEbiN1RIYQ,10038
247
247
  akshare/stock/stock_hold_control_em.py,sha256=iBgnSEV7aYdsS2Ce7ELIUqVo-polfYdqcd6UmEuVN7g,7349
248
248
  akshare/stock/stock_hold_num_cninfo.py,sha256=JY9LcZMhhTiCHfQJv4pwMrLrpUxTKGLE4oRD6pvflsU,3706
249
249
  akshare/stock/stock_hot_rank_em.py,sha256=WMbadW1CFU3ppZHMSPjG2HtXgs7PgYGugNqmyrRQQe4,7349
@@ -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=j1MGYbZI2if2j_LY1S4FLsf4qfq4NwVqD5wmRlv5Log,832
381
- akshare-1.15.66.dist-info/LICENSE,sha256=mmSZCPgfHiVw34LXuFArd-SUgQtBJ_QsIlh-kWlDHfs,1073
382
- akshare-1.15.66.dist-info/METADATA,sha256=_KY49PPY1WCkGJIqVLl35Brda6xP5cSjQmQZGvcTlY8,13423
383
- akshare-1.15.66.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
384
- akshare-1.15.66.dist-info/top_level.txt,sha256=jsf9ZzZPmHaISTVumQPsAw7vv7Yv-PdEVW70SMEelQQ,14
385
- akshare-1.15.66.dist-info/RECORD,,
381
+ akshare-1.15.67.dist-info/LICENSE,sha256=mmSZCPgfHiVw34LXuFArd-SUgQtBJ_QsIlh-kWlDHfs,1073
382
+ akshare-1.15.67.dist-info/METADATA,sha256=QP-7VeWE73Os58p3_RxV1KcWzBmnwc9qsSEfDNIZul8,13423
383
+ akshare-1.15.67.dist-info/WHEEL,sha256=A3WOREP4zgxI0fKrHUG8DC8013e3dK3n7a6HDbcEIwE,91
384
+ akshare-1.15.67.dist-info/top_level.txt,sha256=jsf9ZzZPmHaISTVumQPsAw7vv7Yv-PdEVW70SMEelQQ,14
385
+ akshare-1.15.67.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.6.0)
2
+ Generator: setuptools (75.7.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5