diff --git a/akshare/__init__.py b/akshare/__init__.py index 378965569d2..d206194b3b1 100644 --- a/akshare/__init__.py +++ b/akshare/__init__.py @@ -2605,9 +2605,10 @@ 1.11.89 fix: fix bond_zh_us_rate interface 1.11.90 fix: fix futures_rule interface 1.11.91 fix: remove stock_us_fundamental interface +1.11.92 fix: fix get_gfex_receipt interface """ -__version__ = "1.11.91" +__version__ = "1.11.92" __author__ = "AKFamily" import sys diff --git a/akshare/futures/receipt.py b/akshare/futures/receipt.py index cc34e286f01..4e023d28ab7 100644 --- a/akshare/futures/receipt.py +++ b/akshare/futures/receipt.py @@ -348,11 +348,11 @@ def get_gfex_receipt(date: str = None, vars_list: List = cons.contract_symbols) :rtype: pandas.DataFrame """ if not isinstance(vars_list, list): - return warnings.warn("vars_list: 必须是列表") + raise warnings.warn("vars_list: 必须是列表") date = cons.convert_date(date) if date is not None else datetime.date.today() if date.strftime('%Y%m%d') not in calendar: warnings.warn(f"{date.strftime('%Y%m%d')}非交易日") - return None + return pd.DataFrame() url = "http://www.gfex.com.cn/u/interfacesWebTdWbillWeeklyQuotes/loadList" payload = { "gen_date": date.isoformat().replace("-", "") @@ -376,12 +376,16 @@ def get_gfex_receipt(date: str = None, vars_list: List = cons.contract_symbols) r = requests.post(url, data=payload, headers=headers) data_json = r.json() temp_df = pd.DataFrame(data_json['data']) - result_se = temp_df[['wbillQty', 'diff']].iloc[-1, :] - result_se.index = ['receipt', 'receipt_chg'] - result_se['date'] = date.isoformat().replace("-", "") - result_se['var'] = "SI" - result_df = result_se.to_frame().T - result_df.reset_index(drop=True) + temp_df = temp_df[temp_df['variety'].str.contains("小计")] + result_df = temp_df[['wbillQty', 'diff']].copy() + result_df.loc[:, 'date'] = date.isoformat().replace("-", "") + result_df.loc[:, 'var'] = [item.upper() for item in temp_df['varietyOrder'].tolist()] + + result_df.reset_index(drop=True, inplace=True) + result_df.rename(columns={ + "wbillQty": "receipt", + "diff": "receipt_chg", + }, inplace=True) result_df = result_df[[ 'var', 'receipt', 'receipt_chg', 'date' ]] @@ -454,5 +458,5 @@ def get_receipt(start_day: str = None, end_day: str = None, vars_list: List = co if __name__ == '__main__': - get_receipt_df = get_receipt(start_day='20231124', end_day='20231124') + get_receipt_df = get_receipt(start_day='20231205', end_day='20231210') print(get_receipt_df) diff --git a/docs/changelog.md b/docs/changelog.md index 6e0c95f3324..d994995b216 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -70,6 +70,10 @@ ## 更新说明详情 +1.11.92 fix: fix get_gfex_receipt interface + + 1. 修复 get_gfex_receipt 接口 + 1.11.91 fix: remove stock_us_fundamental interface 1. 移除 stock_us_fundamental 接口 @@ -3225,6 +3229,8 @@ ## 版本更新说明 +1.11.92 fix: fix get_gfex_receipt interface + 1.11.91 fix: remove stock_us_fundamental interface 1.11.90 fix: fix futures_rule interface diff --git a/docs/introduction.md b/docs/introduction.md index 13113e0e50f..7ce57f7a598 100644 --- a/docs/introduction.md +++ b/docs/introduction.md @@ -6,7 +6,7 @@ **风险提示:[AKShare](https://github.com/akfamily/akshare) 开源财经数据接口库所采集的数据皆来自公开的数据源,不涉及任何个人隐私数据和非公开数据。 同时本项目提供的数据接口及相关数据仅用于学术研究,任何个人、机构及团体使用本项目的数据接口及相关数据请注意商业风险。** -1. 本文档更新时间:**2023-12-10**; +1. 本文档更新时间:**2023-12-11**; 2. 如有 [AKShare](https://github.com/akfamily/akshare) 库、文档及数据的相关问题,请在 [AKShare Issues](https://github.com/akfamily/akshare/issues) 中提 Issues; 3. 欢迎关注 **数据科学实战** 微信公众号:
; 4. 如果您的问题未能在文档中找到答案,您也可以加入 **AKShare-VIP QQ 群**: 为了提高问答质量,此群为收费群(一杯咖啡钱即可入群,赠送[《AKShare-初阶-使用教学》](https://zmj.xet.tech/s/wck86)视频课),可以添加 **AKShare-小助手** QQ:1254836886,由小助手邀请入群! ![](https://jfds-1252952517.cos.ap-chengdu.myqcloud.com/akshare/readme/qrcode/qr_code_1254836886.jpg)