akshare 1.16.70__py3-none-any.whl → 1.16.71__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
@@ -3079,9 +3079,10 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
3079
3079
  1.16.68 fix: fix option_dce_daily interface
3080
3080
  1.16.69 fix: fix stock_individual_spot_xq interface
3081
3081
  1.16.70 fix: fix stock_zh_ah_spot_em interface
3082
+ 1.16.71 add: add stock_zh_a_gbjg_em interface
3082
3083
  """
3083
3084
 
3084
- __version__ = "1.16.70"
3085
+ __version__ = "1.16.71"
3085
3086
  __author__ = "AKFamily"
3086
3087
 
3087
3088
  import sys
@@ -3103,6 +3104,11 @@ if sys.version_info < (3, 9):
3103
3104
 
3104
3105
  del sys
3105
3106
 
3107
+ """
3108
+ 东方财富-A股数据-股本结构
3109
+ """
3110
+ from akshare.stock_fundamental.stock_gbjg_em import stock_zh_a_gbjg_em
3111
+
3106
3112
  """
3107
3113
  异步接口
3108
3114
  """
@@ -0,0 +1,80 @@
1
+ #!/usr/bin/env python
2
+ # -*- coding:utf-8 -*-
3
+ """
4
+ Date: 2025/4/3 18:00
5
+ Desc: 东方财富-A股数据-股本结构
6
+ https://emweb.securities.eastmoney.com/pc_hsf10/pages/index.html?type=web&code=SH603392&color=b#/gbjg/gbjg
7
+ """
8
+
9
+ import requests
10
+ import pandas as pd
11
+
12
+
13
+ def stock_zh_a_gbjg_em(symbol: str = "603392.SH") -> pd.DataFrame:
14
+ """
15
+ 东方财富-A股数据-股本结构
16
+ https://emweb.securities.eastmoney.com/pc_hsf10/pages/index.html#/gbjg
17
+ :param symbol: 股票代码
18
+ :type symbol: str
19
+ :return: 股本结构
20
+ :rtype: pandas.DataFrame
21
+ """
22
+ url = "https://datacenter.eastmoney.com/securities/api/data/v1/get"
23
+ params = {
24
+ "reportName": "RPT_F10_EH_EQUITY",
25
+ "columns": "SECUCODE,SECURITY_CODE,END_DATE,TOTAL_SHARES,LIMITED_SHARES,LIMITED_OTHARS,"
26
+ "LIMITED_DOMESTIC_NATURAL,LIMITED_STATE_LEGAL,LIMITED_OVERSEAS_NOSTATE,LIMITED_OVERSEAS_NATURAL,"
27
+ "UNLIMITED_SHARES,LISTED_A_SHARES,B_FREE_SHARE,H_FREE_SHARE,FREE_SHARES,LIMITED_A_SHARES,"
28
+ "NON_FREE_SHARES,LIMITED_B_SHARES,OTHER_FREE_SHARES,LIMITED_STATE_SHARES,"
29
+ "LIMITED_DOMESTIC_NOSTATE,LOCK_SHARES,LIMITED_FOREIGN_SHARES,LIMITED_H_SHARES,"
30
+ "SPONSOR_SHARES,STATE_SPONSOR_SHARES,SPONSOR_SOCIAL_SHARES,RAISE_SHARES,"
31
+ "RAISE_STATE_SHARES,RAISE_DOMESTIC_SHARES,RAISE_OVERSEAS_SHARES,CHANGE_REASON",
32
+ "quoteColumns": "",
33
+ "filter": f'(SECUCODE="{symbol}")',
34
+ "pageNumber": "1",
35
+ "pageSize": "20",
36
+ "sortTypes": "-1",
37
+ "sortColumns": "END_DATE",
38
+ "source": "HSF10",
39
+ "client": "PC",
40
+ "v": "047483522105257925"
41
+ }
42
+ r = requests.get(url, params=params)
43
+ data_json = r.json()
44
+ temp_df = pd.DataFrame(data_json['result']['data'])
45
+ temp_df.rename(columns={
46
+ "END_DATE": "变更日期",
47
+ "TOTAL_SHARES": "总股本",
48
+ "LISTED_A_SHARES": "已上市流通A股",
49
+ "FREE_SHARES": "已流通股份",
50
+ "CHANGE_REASON": "变动原因",
51
+ "LIMITED_A_SHARES": "流通受限股份",
52
+ "LIMITED_OTHARS": "其他内资持股(受限)",
53
+ "LIMITED_DOMESTIC_NOSTATE": "境内法人持股(受限)",
54
+ "LIMITED_DOMESTIC_NATURAL": "境内自然人持股(受限)",
55
+ }, inplace=True)
56
+ temp_df = temp_df[[
57
+ "变更日期",
58
+ "总股本",
59
+ "流通受限股份",
60
+ "其他内资持股(受限)",
61
+ "境内法人持股(受限)",
62
+ "境内自然人持股(受限)",
63
+ "已流通股份",
64
+ "已上市流通A股",
65
+ "变动原因",
66
+ ]]
67
+ temp_df["变更日期"] = pd.to_datetime(temp_df["变更日期"], errors="coerce").dt.date
68
+ temp_df["总股本"] = pd.to_numeric(temp_df["总股本"], errors="coerce")
69
+ temp_df["流通受限股份"] = pd.to_numeric(temp_df["流通受限股份"], errors="coerce")
70
+ temp_df["其他内资持股(受限)"] = pd.to_numeric(temp_df["其他内资持股(受限)"], errors="coerce")
71
+ temp_df["境内法人持股(受限)"] = pd.to_numeric(temp_df["境内法人持股(受限)"], errors="coerce")
72
+ temp_df["境内自然人持股(受限)"] = pd.to_numeric(temp_df["境内自然人持股(受限)"], errors="coerce")
73
+ temp_df["已流通股份"] = pd.to_numeric(temp_df["已流通股份"], errors="coerce")
74
+ temp_df["已上市流通A股"] = pd.to_numeric(temp_df["已上市流通A股"], errors="coerce")
75
+ return temp_df
76
+
77
+
78
+ if __name__ == '__main__':
79
+ stock_zh_a_gbjg_em_df = stock_zh_a_gbjg_em(symbol="603392.SH")
80
+ print(stock_zh_a_gbjg_em_df)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: akshare
3
- Version: 1.16.70
3
+ Version: 1.16.71
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=zdm1lcK61iZLq4BjFkIvYbalvXp1B-scogEZqdW6Bkw,192611
1
+ akshare/__init__.py,sha256=O2lWGJ_cLV9jzHH7uCfsmrGZScc6-HCkD1PdqPQAjYo,192774
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
@@ -368,6 +368,7 @@ akshare/stock_fundamental/stock_finance_hk_em.py,sha256=cCiaWX6ZyKe4W2H9qe-ttpMe
368
368
  akshare/stock_fundamental/stock_finance_sina.py,sha256=432EjGHWFtG0L32PNSC_HWpVLDntabNt9koyUtNG77E,30718
369
369
  akshare/stock_fundamental/stock_finance_ths.py,sha256=nS9bt_hzklzh7pBTCH1PjOa69OUcNZ41Z_zSHiz9Y1U,11527
370
370
  akshare/stock_fundamental/stock_finance_us_em.py,sha256=thRKe9OIfZFQ0q_kAM2kJXCKXGhyPFjHKiiGEK95K2g,9799
371
+ akshare/stock_fundamental/stock_gbjg_em.py,sha256=oKzX9BSMphRSrx0eAyLZ7qfdz-wT-4P2-03fLu_desA,3573
371
372
  akshare/stock_fundamental/stock_hold.py,sha256=hiJx2i3hCW7Kl7kMs4Kh1QNvsg-sIUORvgQaeGjOB-Y,5472
372
373
  akshare/stock_fundamental/stock_ipo_declare.py,sha256=INsQCHRz-j992mg8x71AiIPsLBSr5e_J03EuWmoP0kc,1810
373
374
  akshare/stock_fundamental/stock_kcb_detail_sse.py,sha256=U2w4wUuOTnavqNEmOdQbTZfnEkDdSs91s82YdA6rwNQ,941
@@ -392,10 +393,10 @@ akshare/utils/func.py,sha256=4cwmXFztU86yJNONJ40KJLvsIEQHBbct4iMm3zT2v30,2315
392
393
  akshare/utils/multi_decrypt.py,sha256=aWoL2iEPeuXHJg8-n7OtMKixLnIhfzepACgxfrfmQB4,1657
393
394
  akshare/utils/token_process.py,sha256=nGtgnZGRprXJkhLXH8mcUH4TgIFwzsTOb0EaEPa0Euo,667
394
395
  akshare/utils/tqdm.py,sha256=MuPNwcswkOGjwWQOMWXi9ZvQ_RmW4obCWRj2i7HM7FE,847
395
- akshare-1.16.70.dist-info/licenses/LICENSE,sha256=mmSZCPgfHiVw34LXuFArd-SUgQtBJ_QsIlh-kWlDHfs,1073
396
+ akshare-1.16.71.dist-info/licenses/LICENSE,sha256=mmSZCPgfHiVw34LXuFArd-SUgQtBJ_QsIlh-kWlDHfs,1073
396
397
  tests/__init__.py,sha256=gNzhlO0UPjFq6Ieb38kaVIODXv4cTDByrdohAZnDYt4,82
397
398
  tests/test_func.py,sha256=j1MGYbZI2if2j_LY1S4FLsf4qfq4NwVqD5wmRlv5Log,832
398
- akshare-1.16.70.dist-info/METADATA,sha256=_l2cyB0HTwMwl-vDGqqEYdZBXfJiu9F1GTK8UCppz_Y,12591
399
- akshare-1.16.70.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
400
- akshare-1.16.70.dist-info/top_level.txt,sha256=jsf9ZzZPmHaISTVumQPsAw7vv7Yv-PdEVW70SMEelQQ,14
401
- akshare-1.16.70.dist-info/RECORD,,
399
+ akshare-1.16.71.dist-info/METADATA,sha256=BILN03NBoNu_pjqie6WvwHecj-KdCVF4w0TnArr3ag8,12591
400
+ akshare-1.16.71.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
401
+ akshare-1.16.71.dist-info/top_level.txt,sha256=jsf9ZzZPmHaISTVumQPsAw7vv7Yv-PdEVW70SMEelQQ,14
402
+ akshare-1.16.71.dist-info/RECORD,,