akshare 1.14.64__py3-none-any.whl → 1.14.66__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
@@ -2875,9 +2875,11 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
2875
2875
  1.14.62 fix: fix stock_zt_pool_em interface
2876
2876
  1.14.63 add: add spot_quotations_sge interface
2877
2877
  1.14.64 fix: fix stock_board_industry_spot_em interface
2878
+ 1.14.65 fix: fix option_dce_daily interface
2879
+ 1.14.66 fix: fix stock_profit_forecast_ths interface
2878
2880
  """
2879
2881
 
2880
- __version__ = "1.14.64"
2882
+ __version__ = "1.14.66"
2881
2883
  __author__ = "AKFamily"
2882
2884
 
2883
2885
  import sys
@@ -1,10 +1,11 @@
1
1
  #!/usr/bin/env python
2
2
  # -*- coding:utf-8 -*-
3
3
  """
4
- Date: 2024/1/20 23:30
4
+ Date: 2024/8/28 15:20
5
5
  Desc: 世界各大城市生活成本数据
6
6
  https://expatistan.com/cost-of-living/index
7
7
  """
8
+
8
9
  from io import StringIO
9
10
 
10
11
  import pandas as pd
@@ -20,14 +21,14 @@ def _get_region() -> dict:
20
21
  """
21
22
  url = "https://www.expatistan.com/cost-of-living/index"
22
23
  r = requests.get(url)
23
- soup = BeautifulSoup(r.text, "lxml")
24
+ soup = BeautifulSoup(r.text, features="lxml")
24
25
  half_url_list = [
25
26
  item["href"]
26
- for item in soup.find("ul", attrs={"class": "regions"}).find_all("a")
27
+ for item in soup.find(name="ul", attrs={"class": "regions"}).find_all("a")
27
28
  ]
28
29
  name_list = [
29
30
  item["href"].split("/")[-1]
30
- for item in soup.find("ul", attrs={"class": "regions"}).find_all("a")
31
+ for item in soup.find(name="ul", attrs={"class": "regions"}).find_all("a")
31
32
  ]
32
33
  name_url_dict = dict(zip(name_list, half_url_list))
33
34
  name_url_dict["world"] = "/cost-of-living/index"
@@ -38,7 +39,8 @@ def cost_living(symbol: str = "world") -> pd.DataFrame:
38
39
  """
39
40
  国家或地区生活成本数据
40
41
  https://expatistan.com/cost-of-living/index
41
- :param symbol: choice of {"europe", "north-america", "latin-america", "asia", "middle-east", "africa", "oceania", "world"}
42
+ :param symbol: choice of {"europe", "north-america", "latin-america",
43
+ "asia", "middle-east", "africa", "oceania", "world"}
42
44
  :type symbol: str
43
45
  :return: 国家或地区生活成本数据
44
46
  :rtype: pandas.DataFrame
@@ -605,12 +605,7 @@ def get_dce_daily(date: str = "20220308") -> pd.DataFrame:
605
605
  "variety",
606
606
  ]
607
607
  ]
608
- # TODO pandas 2.1.0 change
609
- try:
610
- data_df = data_df.map(lambda x: x.replace(",", ""))
611
- except: # noqa: E722
612
- data_df = data_df.applymap(lambda x: x.replace(",", ""))
613
-
608
+ data_df = data_df.map(lambda x: x.replace(",", ""))
614
609
  data_df = data_df.astype(
615
610
  {
616
611
  "open": "float",
@@ -690,7 +685,7 @@ if __name__ == "__main__":
690
685
  )
691
686
  print(get_futures_daily_df)
692
687
 
693
- get_dce_daily_df = get_dce_daily(date="20230810")
688
+ get_dce_daily_df = get_dce_daily(date="20140812")
694
689
  print(get_dce_daily_df)
695
690
 
696
691
  get_cffex_daily_df = get_cffex_daily(date="20230810")
@@ -40,7 +40,9 @@ def option_dce_daily(
40
40
  http://www.dce.com.cn/
41
41
  :param trade_date: 交易日
42
42
  :type trade_date: str
43
- :param symbol: choice of {"玉米期权", "豆粕期权", "铁矿石期权", "液化石油气期权", "聚乙烯期权", "聚氯乙烯期权", "聚丙烯期权", "棕榈油期权", "黄大豆1号期权", "黄大豆2号期权", "豆油期权", "乙二醇期权", "苯乙烯期权"}
43
+ :param symbol: choice of {"玉米期权", "豆粕期权", "铁矿石期权", "液化石油气期权", "聚乙烯期权", "聚氯乙烯期权",
44
+ "聚丙烯期权", "棕榈油期权", "黄大豆1号期权", "黄大豆2号期权", "豆油期权", "乙二醇期权", "苯乙烯期权",
45
+ "鸡蛋期权", "玉米淀粉期权", "生猪期权"}
44
46
  :type symbol: str
45
47
  :return: 日频行情数据
46
48
  :rtype: pandas.DataFrame
@@ -68,6 +70,8 @@ def option_dce_daily(
68
70
  another_df.reset_index(inplace=True, drop=True)
69
71
  another_df.columns = another_df.iloc[0]
70
72
  another_df = another_df.iloc[1:, :]
73
+ result_one_df = pd.DataFrame()
74
+ result_two_df = pd.DataFrame()
71
75
  if symbol == "豆粕期权":
72
76
  result_one_df, result_two_df = (
73
77
  table_df[table_df["商品名称"] == "豆粕"],
@@ -133,6 +137,21 @@ def option_dce_daily(
133
137
  table_df[table_df["商品名称"] == "苯乙烯"],
134
138
  another_df[another_df.iloc[:, 0].str.contains("eb")],
135
139
  )
140
+ elif symbol == "鸡蛋期权":
141
+ result_one_df, result_two_df = (
142
+ table_df[table_df["商品名称"] == "鸡蛋"],
143
+ another_df[another_df.iloc[:, 0].str.contains("eb")],
144
+ )
145
+ elif symbol == "玉米淀粉期权":
146
+ result_one_df, result_two_df = (
147
+ table_df[table_df["商品名称"] == "玉米淀粉"],
148
+ another_df[another_df.iloc[:, 0].str.contains("eb")],
149
+ )
150
+ elif symbol == "生猪期权":
151
+ result_one_df, result_two_df = (
152
+ table_df[table_df["商品名称"] == "生猪"],
153
+ another_df[another_df.iloc[:, 0].str.contains("eb")],
154
+ )
136
155
  result_one_df.reset_index(inplace=True, drop=True)
137
156
  result_two_df.reset_index(inplace=True, drop=True)
138
157
  result_two_df.columns.name = None
@@ -148,7 +167,8 @@ def option_czce_daily(
148
167
  :param trade_date: 交易日
149
168
  :type trade_date: str
150
169
  :param symbol: choice of {"白糖期权", "棉花期权", "甲醇期权", "PTA期权", "菜籽粕期权", "动力煤期权", "短纤期权",
151
- "菜籽油期权", "花生期权", "棉花期权", "短纤期权", "纯碱期权", "锰硅期权", "硅铁期权", "尿素期权", "对二甲苯期权", "烧碱期权", "玻璃期权"}
170
+ "菜籽油期权", "花生期权", "棉花期权", "短纤期权", "纯碱期权", "锰硅期权", "硅铁期权", "尿素期权", "对二甲苯期权",
171
+ "烧碱期权", "玻璃期权"}
152
172
  :type symbol: str
153
173
  :return: 日频行情数据
154
174
  :rtype: pandas.DataFrame
@@ -506,7 +526,7 @@ if __name__ == "__main__":
506
526
  print(option_czce_daily_df)
507
527
 
508
528
  option_dce_daily_one, option_dce_daily_two = option_dce_daily(
509
- symbol="黄大豆2号期权", trade_date="20220808"
529
+ symbol="鸡蛋期权", trade_date="20240823"
510
530
  )
511
531
  print(option_dce_daily_one)
512
532
  print(option_dce_daily_two)
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env python
2
2
  # -*- coding:utf-8 -*-
3
3
  """
4
- Date: 2023/8/18 15:29
4
+ Date: 2024/8/28 15:30
5
5
  Desc: 巨潮资讯-数据中心-评级预测-投资评级
6
- http://webapi.cninfo.com.cn/#/thematicStatistics?name=%E6%8A%95%E8%B5%84%E8%AF%84%E7%BA%A7
6
+ https://webapi.cninfo.com.cn/#/thematicStatistics?name=%E6%8A%95%E8%B5%84%E8%AF%84%E7%BA%A7
7
7
  """
8
8
 
9
9
  import pandas as pd
@@ -22,7 +22,7 @@ def _get_file_content_cninfo(file: str = "cninfo.js") -> str:
22
22
  :rtype: str
23
23
  """
24
24
  setting_file_path = get_ths_js(file)
25
- with open(setting_file_path) as f:
25
+ with open(setting_file_path, encoding="utf-8") as f:
26
26
  file_data = f.read()
27
27
  return file_data
28
28
 
@@ -30,7 +30,7 @@ def _get_file_content_cninfo(file: str = "cninfo.js") -> str:
30
30
  def stock_rank_forecast_cninfo(date: str = "20230817") -> pd.DataFrame:
31
31
  """
32
32
  巨潮资讯-数据中心-评级预测-投资评级
33
- http://webapi.cninfo.com.cn/#/thematicStatistics?name=%E6%8A%95%E8%B5%84%E8%AF%84%E7%BA%A7
33
+ https://webapi.cninfo.com.cn/#/thematicStatistics?name=%E6%8A%95%E8%B5%84%E8%AF%84%E7%BA%A7
34
34
  :param date: 查询日期
35
35
  :type date: str
36
36
  :return: 投资评级
@@ -54,7 +54,8 @@ def stock_rank_forecast_cninfo(date: str = "20230817") -> pd.DataFrame:
54
54
  "Pragma": "no-cache",
55
55
  "Proxy-Connection": "keep-alive",
56
56
  "Referer": "http://webapi.cninfo.com.cn/",
57
- "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36",
57
+ "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
58
+ "Chrome/93.0.4577.63 Safari/537.36",
58
59
  "X-Requested-With": "XMLHttpRequest",
59
60
  }
60
61
  r = requests.post(url, params=params, headers=headers)
@@ -1,13 +1,18 @@
1
1
  #!/usr/bin/env python
2
2
  # -*- coding:utf-8 -*-
3
3
  """
4
- Date: 2023/4/9 21:44
4
+ Date: 2024/8/28 15:00
5
5
  Desc: 同花顺-盈利预测
6
6
  https://basic.10jqka.com.cn/new/600519/worth.html
7
7
  """
8
+
9
+ from io import StringIO
10
+
8
11
  import pandas as pd
9
12
  import requests
10
13
 
14
+ from akshare.utils.cons import headers
15
+
11
16
 
12
17
  def stock_profit_forecast_ths(
13
18
  symbol: str = "600519", indicator: str = "预测年报每股收益"
@@ -23,21 +28,18 @@ def stock_profit_forecast_ths(
23
28
  :rtype: pandas.DataFrame
24
29
  """
25
30
  url = f"https://basic.10jqka.com.cn/new/{symbol}/worth.html"
26
- headers = {
27
- "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36",
28
- }
29
31
  r = requests.get(url, headers=headers)
30
32
  r.encoding = "gbk"
31
33
  if indicator == "预测年报每股收益":
32
- temp_df = pd.read_html(r.text)[0]
34
+ temp_df = pd.read_html(StringIO(r.text))[0]
33
35
  temp_df["年度"] = temp_df["年度"].astype(str)
34
36
  return temp_df
35
37
  if indicator == "预测年报净利润":
36
- temp_df = pd.read_html(r.text)[1]
38
+ temp_df = pd.read_html(StringIO(r.text))[1]
37
39
  temp_df["年度"] = temp_df["年度"].astype(str)
38
40
  return temp_df
39
41
  if indicator == "业绩预测详表-机构":
40
- temp_df = pd.read_html(r.text)[2]
42
+ temp_df = pd.read_html(StringIO(r.text))[2]
41
43
  columns_list = []
42
44
  for item in temp_df.columns:
43
45
  columns_list.append(item[1])
@@ -51,7 +53,7 @@ def stock_profit_forecast_ths(
51
53
  temp_df["报告日期"] = pd.to_datetime(temp_df["报告日期"]).dt.date
52
54
  return temp_df
53
55
  if indicator == "业绩预测详表-详细指标预测":
54
- temp_df = pd.read_html(r.text)[3]
56
+ temp_df = pd.read_html(StringIO(r.text))[3]
55
57
  temp_df.columns = [
56
58
  item.replace("(", "-").replace(")", "") for item in temp_df.columns
57
59
  ]
@@ -59,6 +61,13 @@ def stock_profit_forecast_ths(
59
61
 
60
62
 
61
63
  if __name__ == "__main__":
62
- for item in ["预测年报每股收益", "预测年报净利润", "业绩预测详表-机构", "业绩预测详表-详细指标预测"]:
63
- stock_profit_forecast_ths_df = stock_profit_forecast_ths(symbol="600519", indicator=item)
64
+ for _item in [
65
+ "预测年报每股收益",
66
+ "预测年报净利润",
67
+ "业绩预测详表-机构",
68
+ "业绩预测详表-详细指标预测",
69
+ ]:
70
+ stock_profit_forecast_ths_df = stock_profit_forecast_ths(
71
+ symbol="600519", indicator=_item
72
+ )
64
73
  print(stock_profit_forecast_ths_df)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: akshare
3
- Version: 1.14.64
3
+ Version: 1.14.66
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=zXYZnokPlRdH1ld70wQoCc3o6BGNDeMl4xYNDxEc66c,181054
1
+ akshare/__init__.py,sha256=dEuaO6dYs2XIQvfEjUWWLIaIXrIC8aiPuJMWFnrF3ak,181151
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
@@ -33,7 +33,7 @@ akshare/bond/bond_zh_cov.py,sha256=yL77itRK0rFCeQP_M524lW1740D5Q1IZW6eLvjXf2H4,2
33
33
  akshare/bond/bond_zh_sina.py,sha256=msj7upgqaCTzC_MxzhUm7hVKtzHeWRUjlcjvZn2zlbw,4654
34
34
  akshare/bond/cons.py,sha256=SGqjMqRYwJlEb8UczxdcrtcD7I2SAVULXARGEedEQfE,1792
35
35
  akshare/cost/__init__.py,sha256=x1R9hH6E0M7C86XhHFzbPiipUWz9IknuhVZrk4gZus4,82
36
- akshare/cost/cost_living.py,sha256=LRJKKthUOfg-pAGwJpp9R8Ad3ve_yb9vSnjABxfJbQc,2054
36
+ akshare/cost/cost_living.py,sha256=_yoGEW4jBfpjhgMxCXvMtBbrCx2PEuOngV3laEoEOvk,2078
37
37
  akshare/crypto/__init__.py,sha256=lbmNMPPLGkW9AgGL4ZnCwoQvPjOFPDNUz6P3arSkNI0,83
38
38
  akshare/crypto/crypto_bitcoin_cme.py,sha256=IO4dxPj-kwtJXo9F_h5tH64__yeDQXs2cavCkgxxp1I,2436
39
39
  akshare/crypto/crypto_hist_investing.py,sha256=tIeEkFur-u-E2_-R4I_Zy0s_VFnR03CCl4GpgJkLYJw,9748
@@ -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=Zmabe58qHxF0gJ8CKAw9uuuUtxfYMhLNWSJioMGYK04,25363
110
+ akshare/futures/futures_daily_bar.py,sha256=mD7n1K0FSIwA6CREkIjkcPvLaGb1Q7uGc-qrb1hI5j4,25227
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=4qDv8U99Ic82QbFNvwsuaHZX2VPl8Ei-yNsEnRpaPZA,9582
@@ -194,7 +194,7 @@ akshare/nlp/nlp_interface.py,sha256=PyZjT3PkuTbloop-JwLwZ2kNi22zdO-r_pRUWQ5SmgM,
194
194
  akshare/option/__init__.py,sha256=RMTf1bT5EOE3ttWpn3hGu1LtUmsVxDoa0W7W0gXHOy8,81
195
195
  akshare/option/cons.py,sha256=zTRZ62RFwOcAKfmso-7nZJtT3a8Dt1nQbNnEjSqgjpI,4811
196
196
  akshare/option/option_comm_qihuo.py,sha256=kjbdp-94KJJJi1ex5U03abtlgviqwP0Aahb6FwddPkk,3128
197
- akshare/option/option_commodity.py,sha256=_SWFCP0EoKtwwF72WecK6YL-ogKnY7Yjnd2IwjA95Og,21261
197
+ akshare/option/option_commodity.py,sha256=D5n-tdNohA7OtgzwG09UI7LtWUkHSHHOOZujCi8BwOg,22038
198
198
  akshare/option/option_commodity_sina.py,sha256=r6qK_K7w3A6Uqp5ZtBb4pW7vH04oMyeCEZLLGqi0jpA,7776
199
199
  akshare/option/option_czce.py,sha256=L4i7TVKcOns5ZKoqq-mrSykdx3SGwu6OL4eI77-A_lc,1812
200
200
  akshare/option/option_daily_stats_sse_szse.py,sha256=Ip_vE81qbEGt4ocbtWfUT7XGu0HWU0zKkzauZeq9RJA,4962
@@ -265,7 +265,7 @@ akshare/stock/stock_ipo_summary_cninfo.py,sha256=Ma-54GsOOhRWxilLH-Qmm0VVbpJQGf2
265
265
  akshare/stock/stock_new_cninfo.py,sha256=EOuZowDLQSSHyPAwXcuPXbQkqhbz2nRBZsM7o2ZWILE,5725
266
266
  akshare/stock/stock_news_cx.py,sha256=IuNo67ToW6SNT9aZVTDqQMnlLFw4QV-_FWSw-9vgfB4,1055
267
267
  akshare/stock/stock_profile_cninfo.py,sha256=tiEPnoH7IGp9DV1kMQNGIXuVOWpQFl_BS_RX_ijM4BI,3163
268
- akshare/stock/stock_rank_forecast.py,sha256=Qh7bwfQ_Dq8bEMuMLOzFOc_da_0n2GKr8tRFeFqTo5g,3168
268
+ akshare/stock/stock_rank_forecast.py,sha256=5U0fa4tzhqKrw5kDRahUCFSrbrEx_aRtlqZq2mpeJaU,3199
269
269
  akshare/stock/stock_repurchase_em.py,sha256=XVAUD_yd48wqxbMbfU0Ne2SNFOSG9NBklUhf3pl6cKc,5000
270
270
  akshare/stock/stock_share_changes_cninfo.py,sha256=zg-1KHPbxdMRMr4wYY8LA30D-u47YesbEDt_MgCMk_k,4846
271
271
  akshare/stock/stock_share_hold.py,sha256=uToDxxnaD9nVtsidq0kVK-LzWU4XZdZBdzJnJvywAfI,10959
@@ -364,7 +364,7 @@ akshare/stock_fundamental/stock_mda_ym.py,sha256=OdWTiZc0HhTOgGtDiIN1A-u2K51eMZa
364
364
  akshare/stock_fundamental/stock_notice.py,sha256=tGxGz1Usr3qQzgs1Y71imDPkqJz5ooismz3BiaBwQR0,3928
365
365
  akshare/stock_fundamental/stock_profit_forecast_em.py,sha256=QP7jgMwto9o1zc1vDl9BBeta_lgxA13NMbijs9eqjRs,5377
366
366
  akshare/stock_fundamental/stock_profit_forecast_hk_etnet.py,sha256=dQaqxi0wXOidIuAxjUzZy_gdy16HEi20I3jEdpNM3qc,5179
367
- akshare/stock_fundamental/stock_profit_forecast_ths.py,sha256=LP3tBRMZEYKA7VE5-wQ7Pj-H5R57oo0sqTmxbMMobq0,2648
367
+ akshare/stock_fundamental/stock_profit_forecast_ths.py,sha256=ZTShEB5w1y5j6TsHzWT8QR8oatbBTdE1H0IIxPLHn9s,2656
368
368
  akshare/stock_fundamental/stock_recommend.py,sha256=44l1uLofwO-nsDB4oAYWpHQA7_qhXLOo1BurjUvmXzY,4501
369
369
  akshare/stock_fundamental/stock_register_em.py,sha256=QxQh7kddjXLainVVugvOCYG8nDyOv31I8npQmXw3Ccs,15643
370
370
  akshare/stock_fundamental/stock_restricted_em.py,sha256=e5G3oiZBf9d_a8quX5nLzn3RggeF4yX3j-h3nAZBRmA,13378
@@ -379,9 +379,9 @@ akshare/utils/func.py,sha256=PDkwpyCjZCbCLSAG9wBQt-sYNtb1XlpUBvhAfuSLf3s,586
379
379
  akshare/utils/token_process.py,sha256=K4rGXjh_tgugbRcyOK2h2x0jP3PT65IIK7nxhUKhOeQ,666
380
380
  akshare/utils/tqdm.py,sha256=MuPNwcswkOGjwWQOMWXi9ZvQ_RmW4obCWRj2i7HM7FE,847
381
381
  tests/__init__.py,sha256=gNzhlO0UPjFq6Ieb38kaVIODXv4cTDByrdohAZnDYt4,82
382
- tests/test_func.py,sha256=tfvy_YnYmDra2dkKZ5JvprU1gNW5X9T634PszdSdH1A,944
383
- akshare-1.14.64.dist-info/LICENSE,sha256=mmSZCPgfHiVw34LXuFArd-SUgQtBJ_QsIlh-kWlDHfs,1073
384
- akshare-1.14.64.dist-info/METADATA,sha256=iIkiuYRQOUYJ_lxPDy1DMlpZ58i1nvkDoNUP--pLw-U,13961
385
- akshare-1.14.64.dist-info/WHEEL,sha256=Mdi9PDNwEZptOjTlUcAth7XJDFtKrHYaQMPulZeBCiQ,91
386
- akshare-1.14.64.dist-info/top_level.txt,sha256=jsf9ZzZPmHaISTVumQPsAw7vv7Yv-PdEVW70SMEelQQ,14
387
- akshare-1.14.64.dist-info/RECORD,,
382
+ tests/test_func.py,sha256=OK--59gYndzZ-t4iAbfoMrERE6MPUV24u1Ja1wlv0BM,946
383
+ akshare-1.14.66.dist-info/LICENSE,sha256=mmSZCPgfHiVw34LXuFArd-SUgQtBJ_QsIlh-kWlDHfs,1073
384
+ akshare-1.14.66.dist-info/METADATA,sha256=bvoryNxW6M_xnsyuCCash2eA2yelVNrdcztN1GsS2Ko,13961
385
+ akshare-1.14.66.dist-info/WHEEL,sha256=UvcQYKBHoFqaQd6LKyqHw9fxEolWLQnlzP0h_LgJAfI,91
386
+ akshare-1.14.66.dist-info/top_level.txt,sha256=jsf9ZzZPmHaISTVumQPsAw7vv7Yv-PdEVW70SMEelQQ,14
387
+ akshare-1.14.66.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (73.0.1)
2
+ Generator: setuptools (74.0.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
tests/test_func.py CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env python
2
2
  # -*- coding:utf-8 -*-
3
3
  """
4
- Date: 2024/3/14 18:00
4
+ Date: 2024/8/28 15:00
5
5
  Desc: To test intention, just write test code here!
6
6
  """
7
7
 
@@ -42,6 +42,6 @@ def test_zipfile_func():
42
42
 
43
43
 
44
44
  if __name__ == "__main__":
45
- test_cost_living()
45
+ # test_cost_living()
46
46
  test_path_func()
47
47
  test_zipfile_func()