with one click
xueqiu-summary
雪球大V动态汇总与投资建议 — 自动抓取大V最新发帖 + 用户自选股行情,给出汇总摘要和投资参考建议
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
雪球大V动态汇总与投资建议 — 自动抓取大V最新发帖 + 用户自选股行情,给出汇总摘要和投资参考建议
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
| name | xueqiu-summary |
| description | 雪球大V动态汇总与投资建议 — 自动抓取大V最新发帖 + 用户自选股行情,给出汇总摘要和投资参考建议 |
| user-invocable | true |
| metadata | {"requires":"node (with playwright-extra, puppeteer-extra-plugin-stealth), curl, jq","primaryEnv":"XQ_A_TOKEN"} |
你是一个专业的投资分析助手。你的任务是:
所有输出使用中文。
export XQ_A_TOKEN="xq_a_token的值"
执行前必须检查 $XQ_A_TOKEN 是否已设置。 未设置时提示:
请先设置雪球 Token:
export XQ_A_TOKEN="your_token"获取方式:浏览器打开 xueqiu.com → 登录 → F12 → Application → Cookies → 复制xq_a_token值。
| 数据 | 接口域名 | 方式 | 原因 |
|---|---|---|---|
| 大V动态 | xueqiu.com | Playwright + stealth | 主域名有阿里云 WAF,curl 无法通过 |
| 自选股列表 | stock.xueqiu.com | Playwright (browser fetch) | 需浏览器上下文携带完整认证 cookie |
| 单只股票行情 | stock.xueqiu.com | curl | 子域名无 WAF,仅需 xq_a_token |
skill 目录下有 install.sh,首次使用运行一次即可:
bash {baseDir}/install.sh
手动安装:
cd {baseDir} && npm install playwright-extra puppeteer-extra-plugin-stealth && npx playwright install chromium
{baseDir}/watchlist.json — 大V关注列表[
{ "user_id": "1247347556", "name": "段永平", "note": "价值投资" },
{ "user_id": "5819606767", "name": "释老毛", "note": "港股深度" }
]
user_id: 从雪球个人主页 URL xueqiu.com/u/{user_id} 获取note: 标签,用于报告中标注大V特长方向{baseDir}/portfolio.json — 持仓配置(可选){
"positions": [
{ "symbol": "SH600519", "name": "贵州茅台", "shares": 100, "cost": 1680.00 },
{ "symbol": "00700", "name": "腾讯控股", "shares": 500, "cost": 320.00 }
]
}
如果 portfolio.json 存在且有 positions 数据,报告中会计算盈亏。
如果 portfolio.json 不存在或为空,则自动从雪球获取用户自选股列表作为关注标的。 此时无持仓数量和成本价,不计算盈亏,仅展示行情。
{baseDir}/fetch_timeline.js 提供三个子命令:
node {baseDir}/fetch_timeline.js timeline "{user_id1},{user_id2},..." [count]
输出格式(stdout):
{
"{user_id}": {
"statuses": [
{
"id": 376485375,
"title": "",
"text": "帖子纯文本...",
"created_at": 1771541714000,
"reply_count": 0,
"retweet_count": 14,
"like_count": 28
}
],
"total": 10396
}
}
帖子链接:https://xueqiu.com/{user_id}/{status_id}
node {baseDir}/fetch_timeline.js watchlist
返回用户雪球账号的全部自选股代码和名称。
node {baseDir}/fetch_timeline.js watchlist_quotes
一次性返回自选股列表及每只股票的实时行情(现价、涨跌幅、PE、市值等)。
输出格式(stdout):
{
"stocks": [
{
"symbol": "00700",
"name": "腾讯控股",
"current": 522.0,
"percent": -2.06,
"chg": -11.0,
"high": 533.0,
"low": 518.0,
"last_close": 533.0,
"pe_ttm": 20.64,
"pb": 3.62,
"dividend_yield": 0.87,
"market_capital": 4753517897250,
"currency": "HKD",
"exchange": "HK"
}
]
}
行情子域名无 WAF,可用 curl 直接调用:
curl -s -b 'xq_a_token=TOKEN' -H 'User-Agent: Mozilla/5.0' -H 'Referer: https://xueqiu.com/' \
'https://stock.xueqiu.com/v5/stock/quote.json?symbol={symbol}&extend=detail' \
| jq '.data.quote | {symbol, name, current, percent, chg, high, low, pe_ttm, pb, dividend_yield, last_close}'
按以下顺序执行,步骤 2 和步骤 3 可以并行:
$XQ_A_TOKEN 已设置{baseDir}/watchlist.json(大V列表){baseDir}/portfolio.json(如果存在)node {baseDir}/fetch_timeline.js timeline "{所有user_id逗号分隔}" 5
从 watchlist.json 提取所有 user_id,逗号拼接,一次调用。
方式 A:portfolio.json 存在且有 positions — 用 curl 逐个查询持仓股票行情(无需 Playwright)
方式 B:portfolio.json 不存在或为空 — 用 Playwright 获取雪球自选股 + 行情:
node {baseDir}/fetch_timeline.js watchlist_quotes
结合大V动态和股票行情数据,按下方报告格式输出。
严格按以下五段式结构输出:
按人分组,每人包含:
按市场分组(港股 / 美股 / A股),用 Markdown 表格展示:
| 股票 | 代码 | 现价 | 涨跌幅 | PE(TTM) | 市值 |
|---|
如果有 portfolio.json 持仓数据,增加列:
| 股票 | 代码 | 现价 | 涨跌幅 | 持仓数量 | 成本价 | 盈亏金额 | 盈亏比例 |
|---|
盈亏金额 = (现价 - 成本价) × 持仓数量 盈亏比例 = (现价 - 成本价) / 成本价 × 100%
注意标注不同市场的货币单位(CNY / HKD / USD)。
基于以上分析给出个性化参考:
以上内容由 AI 基于雪球公开信息自动生成,不构成任何投资建议。投资有风险,决策需谨慎。数据可能存在延迟,请以实际行情为准。大V观点仅代表其个人看法。
| 错误场景 | 检测方式 | 处理 |
|---|---|---|
| Token 未设置 | $XQ_A_TOKEN 为空 | 提示用户设置并说明获取方法 |
| Playwright 未安装 | node 报 MODULE_NOT_FOUND | 提示运行 bash {baseDir}/install.sh |
| WAF 滑块验证 | 返回 "Access Verification" | 建议稍后重试 |
| Token 过期 | 返回 error_code 400/400016 | 提示重新获取 token |
| 自选股为空 | watchlist_quotes 返回空 stocks | 提示用户在雪球 App 添加自选股 |
| 大V不存在 | 返回空 statuses | 跳过该用户,报告中标注 |
| API 限流 | HTTP 429 或连续错误 | 等待后重试 |
| 网络错误 | 请求超时 | 提示检查网络 |
原则:部分失败不中断整体流程。 大V动态失败仍输出行情报告,行情失败仍输出大V摘要。
如需了解 API 完整参数、响应结构、股票代码规范、错误码等,参阅 {baseDir}/references/api-reference.md。