akshare 1.14.94__py3-none-any.whl → 1.14.96__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
@@ -2905,9 +2905,11 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
2905
2905
  1.14.92 add: add qdii_a_index_jsl interface
2906
2906
  1.14.93 fix: fix stock_zt_pool_em interface
2907
2907
  1.14.94 fix: fix stock_zt_pool_strong_em interface
2908
+ 1.14.95 fix: fix stock_zt_pool_sub_new_em interface
2909
+ 1.14.96 fix: fix stock_zt_pool_sub_new_em interface
2908
2910
  """
2909
2911
 
2910
- __version__ = "1.14.94"
2912
+ __version__ = "1.14.96"
2911
2913
  __author__ = "AKFamily"
2912
2914
 
2913
2915
  import sys
@@ -4151,6 +4153,7 @@ from akshare.stock_feature.stock_board_industry_ths import (
4151
4153
  stock_board_industry_info_ths,
4152
4154
  stock_board_industry_index_ths,
4153
4155
  stock_ipo_benefit_ths,
4156
+ stock_xgsr_ths,
4154
4157
  )
4155
4158
 
4156
4159
  """
@@ -565,7 +565,6 @@ def get_dce_daily(date: str = "20220308") -> pd.DataFrame:
565
565
  }
566
566
  r = requests.post(url, data=params, headers=headers)
567
567
  data_df = pd.read_excel(BytesIO(r.content), header=1)
568
-
569
568
  data_df = data_df[~data_df["商品名称"].str.contains("小计")]
570
569
  data_df = data_df[~data_df["商品名称"].str.contains("总计")]
571
570
  data_df["variety"] = data_df["商品名称"].map(lambda x: cons.DCE_MAP[x])
@@ -681,11 +680,11 @@ def get_futures_daily(
681
680
 
682
681
  if __name__ == "__main__":
683
682
  get_futures_daily_df = get_futures_daily(
684
- start_date="20240506", end_date="20240510", market="SHFE"
683
+ start_date="20240701", end_date="20240720", market="DCE"
685
684
  )
686
685
  print(get_futures_daily_df)
687
686
 
688
- get_dce_daily_df = get_dce_daily(date="20140812")
687
+ get_dce_daily_df = get_dce_daily(date="20240702")
689
688
  print(get_dce_daily_df)
690
689
 
691
690
  get_cffex_daily_df = get_cffex_daily(date="20230810")
akshare/stock/stock_xq.py CHANGED
@@ -1,7 +1,7 @@
1
1
  # !/usr/bin/env python
2
2
  # -*- coding:utf-8 -*-
3
3
  """
4
- Date: 2024/9/4 19:30
4
+ Date: 2024/10/14 21:20
5
5
  Desc: 雪球-行情中心-个股
6
6
  https://xueqiu.com/S/SH513520
7
7
  """
@@ -13,22 +13,18 @@ import pandas as pd
13
13
  import requests
14
14
 
15
15
 
16
- def _convert_timestamp(timestamp_ms):
16
+ def _convert_timestamp(timestamp_ms: int) -> str:
17
17
  """
18
- 将以毫秒为单位的时间戳转换为日期和时间,并保留到秒。
19
-
20
- 参数:
21
- timestamp_ms (int): 以毫秒为单位的时间戳
22
-
23
- 返回:
24
- datetime: 对应的日期和时间,保留到秒
18
+ 时间戳转换为字符串时间
19
+ :param timestamp_ms: 时间戳
20
+ :type timestamp_ms: int
21
+ :return: 字符串
22
+ :rtype: str
25
23
  """
26
24
  # 将毫秒转换为秒
27
25
  timestamp_s = timestamp_ms / 1000
28
-
29
26
  # 使用 fromtimestamp 方法将时间戳转换为 datetime 对象
30
27
  datetime_obj = datetime.fromtimestamp(timestamp_s)
31
-
32
28
  return datetime_obj.strftime("%Y-%m-%d %H:%M:%S")
33
29
 
34
30
 
@@ -122,7 +118,6 @@ def stock_individual_spot_xq(
122
118
  temp_df.loc[temp_df["item"] == "时间", "value"] = temp_df.loc[
123
119
  temp_df["item"] == "时间", "value"
124
120
  ].apply(lambda x: _convert_timestamp(int(x)))
125
-
126
121
  return temp_df
127
122
 
128
123
 
@@ -219,6 +219,58 @@ def stock_board_industry_index_ths(
219
219
  return big_df
220
220
 
221
221
 
222
+ def stock_xgsr_ths() -> pd.DataFrame:
223
+ """
224
+ 同花顺-数据中心-新股数据-新股上市首日
225
+ https://data.10jqka.com.cn/ipo/xgsr/
226
+ :return: 新股上市首日
227
+ :rtype: pandas.DataFrame
228
+ """
229
+ js_code = py_mini_racer.MiniRacer()
230
+ js_content = _get_file_content_ths("ths.js")
231
+ js_code.eval(js_content)
232
+ v_code = js_code.call("v")
233
+ headers = {
234
+ "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
235
+ "Chrome/89.0.4389.90 Safari/537.36",
236
+ "Cookie": f"v={v_code}",
237
+ "hexin-v": v_code,
238
+ }
239
+ url = "https://data.10jqka.com.cn/ipo/xgsr/field/SSRQ/order/desc/page/1/ajax/1/free/1/"
240
+ r = requests.get(url, headers=headers)
241
+ soup = BeautifulSoup(r.text, features="lxml")
242
+ page_num = soup.find(name="span", attrs={"class": "page_info"}).text.split("/")[1]
243
+ big_df = pd.DataFrame()
244
+ tqdm = get_tqdm()
245
+ for page in tqdm(range(1, int(page_num) + 1), leave=False):
246
+ url = f"https://data.10jqka.com.cn/ipo/xgsr/field/SSRQ/order/desc/page/{page}/ajax/1/free/1/"
247
+ v_code = js_code.call("v")
248
+ headers = {
249
+ "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
250
+ "Chrome/89.0.4389.90 Safari/537.36",
251
+ "Cookie": f"v={v_code}",
252
+ "hexin-v": v_code,
253
+ }
254
+ r = requests.get(url, headers=headers)
255
+ temp_df = pd.read_html(StringIO(r.text))[0]
256
+ big_df = pd.concat(objs=[big_df, temp_df], ignore_index=True)
257
+
258
+ big_df.rename(columns={"发行价(元)": "发行价"}, inplace=True)
259
+ big_df["序号"] = pd.to_numeric(big_df["序号"], errors="coerce")
260
+ big_df["股票代码"] = big_df["股票代码"].astype(str).str.zfill(6)
261
+ big_df["发行价"] = pd.to_numeric(big_df["发行价"], errors="coerce")
262
+ big_df["最新价"] = pd.to_numeric(big_df["最新价"], errors="coerce")
263
+ big_df["首日开盘价"] = pd.to_numeric(big_df["首日开盘价"], errors="coerce")
264
+ big_df["首日收盘价"] = pd.to_numeric(big_df["首日收盘价"], errors="coerce")
265
+ big_df["首日最高价"] = pd.to_numeric(big_df["首日最高价"], errors="coerce")
266
+ big_df["首日最低价"] = pd.to_numeric(big_df["首日最低价"], errors="coerce")
267
+ big_df["首日涨跌幅"] = (
268
+ pd.to_numeric(big_df["首日涨跌幅"].str.strip("%"), errors="coerce") / 100
269
+ )
270
+ big_df["上市日期"] = pd.to_datetime(big_df["上市日期"], errors="coerce").dt.date
271
+ return big_df
272
+
273
+
222
274
  def stock_ipo_benefit_ths() -> pd.DataFrame:
223
275
  """
224
276
  同花顺-数据中心-新股数据-IPO受益股
@@ -350,5 +402,8 @@ if __name__ == "__main__":
350
402
  stock_board_industry_index_ths_df = stock_board_industry_index_ths(symbol=stock)
351
403
  print(stock_board_industry_index_ths_df)
352
404
 
405
+ stock_xgsr_ths_df = stock_xgsr_ths()
406
+ print(stock_xgsr_ths_df)
407
+
353
408
  stock_ipo_benefit_ths_df = stock_ipo_benefit_ths()
354
409
  print(stock_ipo_benefit_ths_df)
@@ -264,7 +264,7 @@ def stock_zt_pool_strong_em(date: str = "20241009") -> pd.DataFrame:
264
264
  return temp_df
265
265
 
266
266
 
267
- def stock_zt_pool_sub_new_em(date: str = "20231129") -> pd.DataFrame:
267
+ def stock_zt_pool_sub_new_em(date: str = "20241011") -> pd.DataFrame:
268
268
  """
269
269
  东方财富网-行情中心-涨停板行情-次新股池
270
270
  https://quote.eastmoney.com/ztb/detail#type=cxgc
@@ -345,7 +345,7 @@ def stock_zt_pool_sub_new_em(date: str = "20231129") -> pd.DataFrame:
345
345
  return temp_df
346
346
 
347
347
 
348
- def stock_zt_pool_zbgc_em(date: str = "20231129") -> pd.DataFrame:
348
+ def stock_zt_pool_zbgc_em(date: str = "20241011") -> pd.DataFrame:
349
349
  """
350
350
  东方财富网-行情中心-涨停板行情-炸板股池
351
351
  https://quote.eastmoney.com/ztb/detail#type=zbgc
@@ -428,7 +428,7 @@ def stock_zt_pool_zbgc_em(date: str = "20231129") -> pd.DataFrame:
428
428
  return temp_df
429
429
 
430
430
 
431
- def stock_zt_pool_dtgc_em(date: str = "20231129") -> pd.DataFrame:
431
+ def stock_zt_pool_dtgc_em(date: str = "20241011") -> pd.DataFrame:
432
432
  """
433
433
  东方财富网-行情中心-涨停板行情-跌停股池
434
434
  https://quote.eastmoney.com/ztb/detail#type=dtgc
@@ -525,11 +525,11 @@ if __name__ == "__main__":
525
525
  stock_zt_pool_strong_em_df = stock_zt_pool_strong_em(date="20241009")
526
526
  print(stock_zt_pool_strong_em_df)
527
527
 
528
- stock_zt_pool_sub_new_em_df = stock_zt_pool_sub_new_em(date="20240424")
528
+ stock_zt_pool_sub_new_em_df = stock_zt_pool_sub_new_em(date="20241011")
529
529
  print(stock_zt_pool_sub_new_em_df)
530
530
 
531
- stock_zt_pool_zbgc_em_df = stock_zt_pool_zbgc_em(date="20240424")
531
+ stock_zt_pool_zbgc_em_df = stock_zt_pool_zbgc_em(date="20241011")
532
532
  print(stock_zt_pool_zbgc_em_df)
533
533
 
534
- stock_zt_pool_dtgc_em_df = stock_zt_pool_dtgc_em(date="20240424")
534
+ stock_zt_pool_dtgc_em_df = stock_zt_pool_dtgc_em(date="20241011")
535
535
  print(stock_zt_pool_dtgc_em_df)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: akshare
3
- Version: 1.14.94
3
+ Version: 1.14.96
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=5cbCdBhoJQOLbVPilhkvelHZFhDofVQ2TWipzB-DHcY,182620
1
+ akshare/__init__.py,sha256=KnCf23BWYZ5SUYeJT1wRUQmiUmVjqBKKQqxupNoJFGs,182744
2
2
  akshare/datasets.py,sha256=-qdwaQjgBlftX84uM74KJqCYJYkQ50PV416_neA4uls,995
3
3
  akshare/air/__init__.py,sha256=RMTf1bT5EOE3ttWpn3hGu1LtUmsVxDoa0W7W0gXHOy8,81
4
4
  akshare/air/air_hebei.py,sha256=xIXNGLK7IGYqrkteM9fxnHAwWqk6PCQs6D9-ggZ7byY,4442
@@ -107,7 +107,7 @@ akshare/futures/futures_comex_em.py,sha256=V-mkKQkH5N8PyaZWKdyggb2lTnY8DDDxiUPt-
107
107
  akshare/futures/futures_comm_ctp.py,sha256=V8TEKO0R0i6LfE8DDFqrMA3JGwNlpmaQCvvMugKZ1I8,1004
108
108
  akshare/futures/futures_comm_qihuo.py,sha256=uQfabZ63qME8sTaxUbIUVQBVi8yTaPPDhD7voR9PEx0,10504
109
109
  akshare/futures/futures_contract_detail.py,sha256=auwzNdaoFi5hoJY6rNkO54v5FD2gmEkQu7B90yEDtkc,1175
110
- akshare/futures/futures_daily_bar.py,sha256=mD7n1K0FSIwA6CREkIjkcPvLaGb1Q7uGc-qrb1hI5j4,25227
110
+ akshare/futures/futures_daily_bar.py,sha256=1f9khe6IVGC34aon79uTAqlSseeZU5mES47hEXbG0EY,25225
111
111
  akshare/futures/futures_foreign.py,sha256=oSIoAg5oy-CIlPWHkQffcvZGu02Y2GWOrt-6aPA53Xg,2059
112
112
  akshare/futures/futures_hf_em.py,sha256=OEUltaq1LKabl9eTQoNxswnl1BLKpB27eiIHwbu_Rh4,3178
113
113
  akshare/futures/futures_hq_sina.py,sha256=eK1gEan4DPvpYmln8-tNnzh_J_733s95DBr--NqNYVA,9576
@@ -278,7 +278,7 @@ akshare/stock/stock_us_js.py,sha256=wwZpRvVHqjxwd0cb2O5vtRW8Zw90Kdl5O4XNwoevN64,
278
278
  akshare/stock/stock_us_pink.py,sha256=jgkEjPm_qa4zSN1MH0unHJopSkcF-8Rqlp5Kus2KaQ8,3062
279
279
  akshare/stock/stock_us_sina.py,sha256=3bD41Y5GqDTv52bx5jbjrt0psaHZS10UL_e7E2B6wW8,8146
280
280
  akshare/stock/stock_weibo_nlp.py,sha256=eM7ofsNSrKiYeS0g38Qj9CxT6dkJZrn_pmziIiTqp4U,3286
281
- akshare/stock/stock_xq.py,sha256=mQJ2EQhJEESEwauTvymp7YEEoTBm0S77DXs3kvzzjQo,4686
281
+ akshare/stock/stock_xq.py,sha256=pdqikdhjWR_eqAVJ8bMWDdsa8BE8E1MBNagvMKSvymg,4619
282
282
  akshare/stock/stock_zh_a_sina.py,sha256=gryRmUwqF9PyNl-fPhD72y5nfNmLVEnvzjZDhAe-cpg,18862
283
283
  akshare/stock/stock_zh_a_special.py,sha256=RRXkeZtRWm_maIPWgxvhBdX6eNybECjhSuEesZHRFJI,10294
284
284
  akshare/stock/stock_zh_a_tick_tx.py,sha256=TJUAWLKAeoLEaVVJQlj0t-1smZGoAO0X0rPsUPVhZZ4,2131
@@ -295,7 +295,7 @@ akshare/stock_feature/stock_a_pe_and_pb.py,sha256=8R67gE1vUYtu9bLbZNXD88kHMcKSnB
295
295
  akshare/stock_feature/stock_account_em.py,sha256=PA-531xnv5uerFrYGc40mk8q8O0DGciHC_XVlE9udis,3342
296
296
  akshare/stock_feature/stock_all_pb.py,sha256=2yQLq03qXNbTB5AtJ-Q8uJldOluElH5zTjYneY3aaZ0,1194
297
297
  akshare/stock_feature/stock_analyst_em.py,sha256=Md3_G-Px0O1lk4dx5dCEKl8Vjgwt79Sh-FSh_sW1Elo,9508
298
- akshare/stock_feature/stock_board_industry_ths.py,sha256=bn4vPXaK_ybU-qUttQshnzFC1L_S9reO2OydmAt7sGI,12488
298
+ akshare/stock_feature/stock_board_industry_ths.py,sha256=KvaWYEdxidYo4qL4LRJOZRsTNe0e3GeiBq1YLi8mf0I,15084
299
299
  akshare/stock_feature/stock_buffett_index_lg.py,sha256=NpNccHmGjtqLz6aUladB6InPzO2pjoImbgCgmNEYUuM,2027
300
300
  akshare/stock_feature/stock_classify_sina.py,sha256=Lg7ROG5W9HioFRplJI2rZ6tAAHM09N3g9qF6kReIQYI,3210
301
301
  akshare/stock_feature/stock_comment_em.py,sha256=uSOS5YmyXB9jSDsZf1fNC0RPGTE6_4RzjwxaewhJQtc,13697
@@ -352,7 +352,7 @@ akshare/stock_feature/stock_zdhtmx_em.py,sha256=2BpJQntGgUlEIOmDlepOiOkw-e-tKLRa
352
352
  akshare/stock_feature/stock_zf_pg.py,sha256=nYJ1uLOBdzM_PDyq4MNeWoCTripFMAPoAiaPfhDqkcg,6343
353
353
  akshare/stock_feature/stock_zh_valuation_baidu.py,sha256=oxYIHP68pFvAYyqjCvZp3a9tpczTFiWhSxZ0w4eyo7I,1904
354
354
  akshare/stock_feature/stock_zh_vote_baidu.py,sha256=SsSNnCq7PDFMzWFcPFcC_MSc9rua412P14vHc923gmo,1761
355
- akshare/stock_feature/stock_ztb_em.py,sha256=3fF3tPVNY4j5fUDLgpmeAD1yXhOGjRz-lC644eynxms,17019
355
+ akshare/stock_feature/stock_ztb_em.py,sha256=DducYpjOOZmguhVlMbFX33EHVzoAMMjNvbef_oXuZPo,17019
356
356
  akshare/stock_feature/ths.js,sha256=AWPkHf3L2Il1UUL0F5qDqNn1dfU0OlZBNUbMf8AmI3Y,39664
357
357
  akshare/stock_fundamental/__init__.py,sha256=jiXoO9OXiMxB0wHaPQkuxNckYuoFKtzuhZL1ytnE2nQ,82
358
358
  akshare/stock_fundamental/stock_finance.py,sha256=WuYvLo8xZxH-VS-6P-S31yzsKA1ojrwegcLXP2byle4,30676
@@ -382,8 +382,8 @@ akshare/utils/token_process.py,sha256=K4rGXjh_tgugbRcyOK2h2x0jP3PT65IIK7nxhUKhOe
382
382
  akshare/utils/tqdm.py,sha256=MuPNwcswkOGjwWQOMWXi9ZvQ_RmW4obCWRj2i7HM7FE,847
383
383
  tests/__init__.py,sha256=gNzhlO0UPjFq6Ieb38kaVIODXv4cTDByrdohAZnDYt4,82
384
384
  tests/test_func.py,sha256=j1MGYbZI2if2j_LY1S4FLsf4qfq4NwVqD5wmRlv5Log,832
385
- akshare-1.14.94.dist-info/LICENSE,sha256=mmSZCPgfHiVw34LXuFArd-SUgQtBJ_QsIlh-kWlDHfs,1073
386
- akshare-1.14.94.dist-info/METADATA,sha256=TD6vP0ANWTkF0Qbad19iPoRMAEt8bbHqXIm2oqz8uUg,14163
387
- akshare-1.14.94.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
388
- akshare-1.14.94.dist-info/top_level.txt,sha256=jsf9ZzZPmHaISTVumQPsAw7vv7Yv-PdEVW70SMEelQQ,14
389
- akshare-1.14.94.dist-info/RECORD,,
385
+ akshare-1.14.96.dist-info/LICENSE,sha256=mmSZCPgfHiVw34LXuFArd-SUgQtBJ_QsIlh-kWlDHfs,1073
386
+ akshare-1.14.96.dist-info/METADATA,sha256=ppYCML2cAOHC3S1KfDJknL9VEJ1HxxAwDrAQ9KNvTS8,14163
387
+ akshare-1.14.96.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
388
+ akshare-1.14.96.dist-info/top_level.txt,sha256=jsf9ZzZPmHaISTVumQPsAw7vv7Yv-PdEVW70SMEelQQ,14
389
+ akshare-1.14.96.dist-info/RECORD,,