Files
MoFin/venv/lib/python3.12/site-packages/akshare/bond/bond_cb_ths.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

94 lines
3.0 KiB
Python

# -*- coding:utf-8 -*-
# !/usr/bin/env python
"""
Date: 2024/8/14 11:30
Desc: 同花顺-数据中心-可转债
https://data.10jqka.com.cn/ipo/bond/
"""
import pandas as pd
import requests
def bond_zh_cov_info_ths() -> pd.DataFrame:
"""
同花顺-数据中心-可转债
https://data.10jqka.com.cn/ipo/bond/
:return: 可转债行情
:rtype: pandas.DataFrame
"""
url = "https://data.10jqka.com.cn/ipo/kzz/"
headers = {
"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",
}
r = requests.get(url, headers=headers)
data_json = r.json()
temp_df = pd.DataFrame(data_json["list"])
temp_df.rename(
columns={
"sub_date": "申购日期",
"bond_code": "债券代码",
"bond_name": "债券简称",
"code": "正股代码",
"name": "正股简称",
"sub_code": "申购代码",
"share_code": "原股东配售码",
"sign_date": "中签公布日",
"plan_total": "计划发行量",
"issue_total": "实际发行量",
"issue_price": "-",
"success_rate": "中签率",
"listing_date": "上市日期",
"expire_date": "到期时间",
"price": "转股价格",
"quota": "每股获配额",
"number": "中签号",
"market_id": "-",
"stock_market_id": "-",
},
inplace=True,
)
temp_df = temp_df[
[
"债券代码",
"债券简称",
"申购日期",
"申购代码",
"原股东配售码",
"每股获配额",
"计划发行量",
"实际发行量",
"中签公布日",
"中签号",
"上市日期",
"正股代码",
"正股简称",
"转股价格",
"到期时间",
"中签率",
]
]
temp_df["申购日期"] = pd.to_datetime(
temp_df["申购日期"], format="%Y-%m-%d", errors="coerce"
).dt.date
temp_df["中签公布日"] = pd.to_datetime(
temp_df["中签公布日"], format="%Y-%m-%d", errors="coerce"
).dt.date
temp_df["上市日期"] = pd.to_datetime(
temp_df["上市日期"], format="%Y-%m-%d", errors="coerce"
).dt.date
temp_df["到期时间"] = pd.to_datetime(
temp_df["到期时间"], format="%Y-%m-%d", errors="coerce"
).dt.date
temp_df["每股获配额"] = pd.to_numeric(temp_df["每股获配额"], errors="coerce")
temp_df["计划发行量"] = pd.to_numeric(temp_df["计划发行量"], errors="coerce")
temp_df["实际发行量"] = pd.to_numeric(temp_df["实际发行量"], errors="coerce")
temp_df["转股价格"] = pd.to_numeric(temp_df["转股价格"], errors="coerce")
return temp_df
if __name__ == "__main__":
bond_zh_cov_info_ths_df = bond_zh_cov_info_ths()
print(bond_zh_cov_info_ths_df)