拓十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Python 一键批量获取 A股/港股/期货 实时行情价格(附完整代码)

Python 一键批量获取 A股/港股/期货 实时行情价格(附完整代码)

一、前言

炒股、做量化的朋友经常需要同时跟踪多只股票或期货合约的实时价格。今天给大家分享一个免费的行情 API,支持 A股、港股、期货,并且可以批量请求,效率拉满。文末附完整可运行代码。

二、API 简介

  • 接口地址:http://ddnsapi.top:1808/api/v1/request
  • 请求方式:POST(JSON)
  • 请求类型:batch_basic_quote(批量基础行情)
  • 频率限制:未携带 token 时每分钟 120 次请求
  • 支持品种:A股(如600519)、港股(如HK3908)、期货主连(如lh9999生猪、m9999豆粕、sn9999沪锡)

三、核心代码

python

import requests import json headers = { # 没有token限制每分钟120次请求 #"token": "", } URL_API = "http://ddnsapi.top:1808/api/v1/request" def ddnsapi_post(data): try: req = requests.post(URL_API, json=data, timeout=5, headers=headers) if req.status_code == 200: try: result = req.json() except ValueError: try: result = json.loads(req.text) except ValueError: print("响应不是合法 JSON:", req.text[:200]) return None if isinstance(result, str): try: result = json.loads(result) except ValueError: print("响应内容是字符串且无法解析为 JSON:", result[:200]) return None return result else: print("请求失败:", URL_API, req.status_code, req.text) return None except requests.RequestException as e: print("请求异常:", e) return None # 批量获取实时行情价格 支持A股/港股/期货 codelist = ["lh9999", "m9999", "sn9999", "600519", "HK3908"] data = {'req_type': 'batch_basic_quote', 'codelist': codelist} data_json = ddnsapi_post(data) print(data_json)

四、返回结果示例

python

{ 'status': True, 'fields': ['代码', '名称', '昨收', '最高', '最低', '现价'], 'items': [ ['HK3908', '中金公司', 19.35, 19.69, 19.02, 19.13], ['m9999', '豆粕主连', 3359, 3372, 3350, 3356], ['lh9999', '生猪主连', 10295, 10615, 10295, 10560], ['sn9999', '沪锡主连', 409980, 412950, 410200, 412790], ['600519', '贵州茅台', 1243.88, 1245.87, 1230.88, 1235.58] ] }

返回字段说明:

字段含义
代码证券代码
名称证券名称
昨收昨日收盘价
最高当日最高价
最低当日最低价
现价当前最新价

五、代码亮点

  1. JSON 解析容错:先req.json(),失败再json.loads(req.text),兼容部分 API 返回字符串包裹 JSON 的情况(源码第 13–26 行做了两层解析)。
  2. 异常处理完善:捕获requests.RequestException,网络抖动不会导致程序崩溃。
  3. 超时控制:timeout=5,避免接口无响应时程序卡死。

六、使用场景

  • 量化策略实时监控多个标的
  • 自建盯盘小工具
  • 学习 Python 接口调用与 JSON 解析

七、注意事项

  • 未带 token 每分钟最多 120 次请求,高频使用建议申请 token
  • 期货代码带9999后缀表示主连合约
  • 港股代码需加HK前缀,A股直接用 6 位数字代码

八、总结

通过这个免费 API,十几行代码就能批量拿到 A股、港股、期货的实时报价,省去了自己写爬虫或接复杂券商 SDK 的麻烦。建议大家在本地跑一下codelist,换成自己关注的标的即可。

返回列表