Files
MoFin/venv/lib/python3.12/site-packages/akshare/bond/bond_nafmii.py
T
知微 fa45d8aa5f fix: 小果地址统一node122(兼容LAN+EasyTier)
- health_checklist.json: 192.168.1.122→node122
- ocr_client.py: docstring IP→node122
- docs/market-data-requirements.md: IP→node122
- 所有API调用通过ProxyHandler({})绕过系统代理
  Privoxy对node122:18003返回500,直连正常
2026-06-30 02:56:35 +08:00

71 lines
2.1 KiB
Python

#!/usr/bin/env python
# -*- coding:utf-8 -*-
"""
Date: 2024/3/16 9:00
Desc:中国银行间市场交易商协会(https://www.nafmii.org.cn/)
孔雀开屏(http://zhuce.nafmii.org.cn/fans/publicQuery/manager)的债券基本信息数据
"""
import pandas as pd
import requests
def bond_debt_nafmii(page: str = "1") -> pd.DataFrame:
"""
中国银行间市场交易商协会-非金融企业债务融资工具注册信息系统
http://zhuce.nafmii.org.cn/fans/publicQuery/manager
:param page: 输入数字页码
:type page: int
:return: 指定 sector 和 indicator 的数据
:rtype: pandas.DataFrame
"""
url = "http://zhuce.nafmii.org.cn/fans/publicQuery/releFileProjDataGrid"
payload = {
"regFileName": "",
"itemType": "",
"startTime": "",
"endTime": "",
"entityName": "",
"leadManager": "",
"regPrdtType": "",
"page": page,
"rows": 50,
}
payload.update({"page": page})
r = requests.post(url, data=payload)
data_json = r.json() # 数据类型为 json 格式
temp_df = pd.DataFrame(data_json["rows"])
temp_df.rename(
columns={
"firstIssueAmount": "金额",
"isReg": "注册或备案",
"regFileName": "债券名称",
"regNoticeNo": "注册通知书文号",
"regPrdtType": "品种",
"releaseTime": "更新日期",
"projPhase": "项目状态",
},
inplace=True,
)
if "注册通知书文号" not in temp_df.columns:
temp_df["注册通知书文号"] = pd.NA
temp_df = temp_df[
[
"债券名称",
"品种",
"注册或备案",
"金额",
"注册通知书文号",
"更新日期",
"项目状态",
]
]
temp_df["金额"] = pd.to_numeric(temp_df["金额"], errors="coerce")
temp_df["更新日期"] = pd.to_datetime(temp_df["更新日期"], errors="coerce").dt.date
return temp_df
if __name__ == "__main__":
bond_debt_nafmii_df = bond_debt_nafmii(page="1")
print(bond_debt_nafmii_df)