前言¶
做 A 股短线或资金面复盘时,龙虎榜往往是必看数据源:既要当日上榜个股概况,也要营业部席位上的买卖明细。常见做法是在东方财富网页里逐条点开、手工复制到表格,日期一多就容易漏项、字段也不统一。
下面介绍 SkillHub 社区 Skill eastmoney-lhb-extract(坐标 @user_1da200f4/eastmoney-lhb-extract,版本 1.0.2)。它把「榜单列表 + 按 TRADE_ID 拉明细 + 买方前五席 + Excel 导出」收成一套可重复执行的流程,适合交给 Agent 按自然语言触发,或在技能目录里直接跑 main.py。
这是什么¶
eastmoney-lhb-extract 是面向 data-analysis 的社区 Skill,发布者为 user_1da200f4,SkillHub 标注 requires_api_key=false,无需单独配置 API Key。
一句话定位:自动从东方财富数据中心接口获取龙虎榜单,再为每条记录拉取营业部成交明细,筛出买入金额最大的前五名买方席位,并生成可下载的 Excel。
与纯网页爬表相比,它直接调用东方财富公开的数据中心 API(datacenter-web.eastmoney.com),字段与分页在脚本里固定,便于按交易日批量复跑。
核心功能¶
依据技能包内 SKILL.md 与 main.py,已核实能力如下:
- 龙虎榜单:请求
reportName=RPT_DAILYBILLBOARD_DETAILS,支持分页(每页 500 条),可按TRADE_DATE过滤指定交易日。 - 成交明细:对每条榜单记录的
TRADE_ID再请求reportName=RPT_OPERATEDEPT_TRADE,拿到营业部维度数据。 - 买方前五席:在明细中筛选
TRADE_DIRECTION == '0'(买方),按BUY_AMT_REAL降序取前 5 名营业部。 - Excel 导出:默认输出
eastmoney_lhb.xlsx;每条股票若存在前五买方,会展开为 5 行(每行对应一个席位),列名与技能文档中的字段表一致(含 SECUCODE、涨跌幅、龙虎榜买卖额、上榜原因、席位名称与买卖金额等)。
Agent 侧可通过技能元数据中的触发词唤起,例如:龙虎榜、东方财富龙虎榜、提取龙虎榜数据、eastmoney lhb、lhb data。
安装与启用¶
安装 SkillHub CLI(若尚未安装)¶
先确认本机是否已有 CLI:
command -v skillhub && skillhub --version
未安装时,可按 SkillHub 官方安装文档执行完整安装(含 CLI 与默认 Skill):
curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash
仅需要 CLI 时:
curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash -s -- --cli-only
安装本 Skill¶
安装时必须用 --dir 指向当前 Agent 的 skills 目录,否则默认落在 ./skills/,Agent 可能识别不到。
skillhub install @user_1da200f4/eastmoney-lhb-extract --dir <你的 skills 目录>
常用路径(来自 SkillHub 安装说明):
- Cursor:
~/.cursor/skills/ - Codex:
~/.codex/skills/或项目下的.agents/skills/ - Claude Code:
~/.claude/skills/
也可以在对话里让 AI 按官方指引安装:
请根据 https://skillhub.cn/install/skillhub.md,安装 `@user_1da200f4/eastmoney-lhb-extract`。
Python 依赖¶
技能入口为 main.py。在技能目录下安装 requirements.txt 中的依赖后再运行脚本:
pip install -r requirements.txt
依赖包括:requests、beautifulsoup4、pandas、openpyxl、lxml(版本下限见技能包内 requirements.txt)。
典型用法¶
进入技能安装目录(例如 .../eastmoney-lhb-extract/),按 SKILL.md 示例执行。
默认:前一个工作日的龙虎榜(周一会回退到上周五,脚本内 get_previous_workday() 处理周末):
python main.py
指定交易日(格式 YYYY-MM-DD):
python main.py --date 2026-04-23
自定义输出路径:
python main.py --output my_lhb_data.xlsx
在 Agent 中,用自然语言描述同一意图即可,例如「提取昨天东方财富龙虎榜并导出 Excel」;Agent 应进入技能目录、安装依赖后执行上述命令。
导出列与「每条股票 5 行买方席位」的规则见技能文档「Excel输出格式」一节,与 export_to_excel 实现一致。
适用场景与注意¶
适合谁
- 需要按日归档龙虎榜、做席位统计或回测前清洗数据的量化/研究同学。
- 希望在 Cursor、Codex 等环境里用对话触发固定提取流程,而不是每次手写请求参数。
限制与注意
- 数据来源与合规:数据来自东方财富公开接口,仅供研究与个人分析;请遵守站点使用条款,勿高频压测(脚本在翻页与逐股明细间有
time.sleep(0.2)节流)。 - 网络与环境:需能访问
datacenter-web.eastmoney.com;无数据时脚本会提示检查日期或网络。 - 非交易日:指定日期若无上榜数据,可能得到空结果;默认「前一工作日」不等于「上一交易日」,遇节假日需手动
--date。 - 明细缺失:若某条记录没有买方前五数据,仍会导出一行,席位相关列为空。
- 社区维护:来源为 SkillHub
community,版本以页面与安装包为准(当前 1.0.2);接口字段若东方财富调整,需关注技能更新。
SkillHub 页面统计(抓取时):评分 100000,下载约 865 次;标签标明无需 API Key。
结尾¶
eastmoney-lhb-extract 把龙虎榜列表、营业部明细和 Excel 模板对齐成一条命令链,适合纳入日常复盘或 Agent 工作流。安装与说明以 SkillHub 为准:
- 技能页:https://www.skillhub.cn/skills/user_1da200f4/eastmoney-lhb-extract
- API 条目:https://api.skillhub.cn/user_1da200f4/eastmoney-lhb-extract