fa45d8aa5f
- 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,直连正常
94 lines
3.0 KiB
Python
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)
|