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,直连正常
62 lines
2.0 KiB
Python
62 lines
2.0 KiB
Python
# -*- coding:utf-8 -*-
|
|
# !/usr/bin/env python
|
|
"""
|
|
Date: 2025/9/8 16:20
|
|
Desc: 上海证券交易所-产品-股票期权-信息披露-当日合约
|
|
http://www.sse.com.cn/assortment/options/disclo/preinfo/
|
|
"""
|
|
|
|
import pandas as pd
|
|
import requests
|
|
|
|
|
|
def option_current_day_sse() -> pd.DataFrame:
|
|
"""
|
|
上海证券交易所-产品-股票期权-信息披露-当日合约
|
|
http://www.sse.com.cn/assortment/options/disclo/preinfo/
|
|
:return: 上交所期权当日合约
|
|
:rtype: pandas.DataFrame
|
|
"""
|
|
url = "http://query.sse.com.cn/commonQuery.do"
|
|
params = {
|
|
"isPagination": "false",
|
|
"expireDate": "",
|
|
"securityId": "",
|
|
"sqlId": "SSE_ZQPZ_YSP_GGQQZSXT_XXPL_DRHY_SEARCH_L",
|
|
}
|
|
headers = {
|
|
"Accept": "*/*",
|
|
"Accept-Encoding": "gzip, deflate",
|
|
"Accept-Language": "zh-CN,zh;q=0.9,en;q=0.8",
|
|
"Cache-Control": "no-cache",
|
|
"Connection": "keep-alive",
|
|
"Host": "query.sse.com.cn",
|
|
"Pragma": "no-cache",
|
|
"Referer": "http://www.sse.com.cn/",
|
|
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
|
|
"Chrome/101.0.4951.67 Safari/537.36",
|
|
}
|
|
r = requests.get(url, params=params, headers=headers)
|
|
data_json = r.json()
|
|
temp_df = pd.DataFrame(data_json["result"])
|
|
dict_df = {
|
|
"SECURITY_ID": "合约编码",
|
|
"CONTRACT_ID": "合约交易代码",
|
|
"CONTRACT_SYMBOL": "合约简称",
|
|
"SECURITYNAMEBYID": "标的券名称及代码",
|
|
"CALL_OR_PUT": "类型",
|
|
"EXERCISE_PRICE": "行权价",
|
|
"CONTRACT_UNIT": "合约单位",
|
|
"END_DATE": "期权行权日",
|
|
"DELIVERY_DATE": "行权交收日",
|
|
"EXPIRE_DATE": "到期日",
|
|
"START_DATE": "开始日期",
|
|
}
|
|
temp_df = temp_df[dict_df.keys()].rename(columns=dict_df)
|
|
return temp_df
|
|
|
|
|
|
if __name__ == "__main__":
|
|
option_current_day_sse_df = option_current_day_sse()
|
|
print(option_current_day_sse_df)
|