説明なし

Yi Jiarui 7af68f83ee modified: majiyong/majiyong-closing-report.md 4 ヶ月 前
majiyong 7af68f83ee modified: majiyong/majiyong-closing-report.md 4 ヶ月 前
node_modules 3a34be2200 new file: README.md 4 ヶ月 前
scripts 7af68f83ee modified: majiyong/majiyong-closing-report.md 4 ヶ月 前
shuhua 7af68f83ee modified: majiyong/majiyong-closing-report.md 4 ヶ月 前
README.md cff6cfda34 modified: README.md 4 ヶ月 前

README.md

小红书 VOC 双案例工作流 · 舒华跑步机 + 马记永牛肉面

2026 年 4 月 两个独立投放案例的小红书公开评论 VOC 深度分析,验证一套可复用的 6 阶段 VOC 工作流不同品类 / 不同体量 / 不同生命周期 下的适配能力。


一、两个案例对比

维度 舒华跑步机 (耐用消费品) 马记永牛肉面 (餐饮连锁)
投放规模 43 KOC (1 sheet) 293 (12 KOL + 281 KOC,2 sheet)
API 抓取评论 17 (含子评论) 1,612 (≈ 舒华 95 倍)
噪声率 47% (KOC 互助互赞严重) < 1%
竞品提及 易跑 1 次 0 次 (品牌护城河深)
心智阶段 知名度待建立 心智已渗透,需后端承接
核心问题 "用户不知道我" "用户提了请求我没承接"
第一优先动作 静音减震 RTB 具象化 求开店评论转私域线索

核心结论: 同一套 VOC 工作流,在 17 条评论的小样本和 1,612 条评论的大样本上都能产出结构化、可执行的洞察。区别只是行动差异化。


二、目录结构

shuhua-majiyong_VOC/
├── README.md                                  ← 本文档 (顶层入口)
│
├── 【新鲜菜项目】马记永4月宣发数据汇总(1).xlsx  ← 马记永输入 (脚本以 ../ 引用)
│
├── shuhua/                                    ← 舒华跑步机子项目
│   ├── README.md                              ← 子项目说明
│   ├── 舒华跑步机四月宣发报备KOC发布数据.xlsx     ← 舒华输入
│   ├── shuhua-voc-report.md                   ← v1 VOC 深度分析
│   ├── shuhua-closing-report.md               ← v2 结案报告 (Markdown)
│   ├── shuhua-closing-report.html             ← v2 结案报告 (交互式 HTML)
│   ├── shuhua-new-opportunities.md            ← v2 新机会挖掘 (17 个)
│   ├── scripts/
│   │   ├── collect-shuhua-voc.js              ← 采集
│   │   ├── gen-shuhua-report.js               ← v1 报告生成
│   │   └── gen-shuhua-closing-report.js       ← v2 结案报告
│   └── data/
│       ├── raw-merged.json                    ← 合并后原始数据
│       ├── notes/         (43 个)             ← 短链 → noteId 缓存
│       ├── comments/      (42 个)             ← 评论缓存
│       ├── audit.log
│       └── collect-run.log
│
├── majiyong/                                  ← 马记永子项目
│   ├── README.md                              ← 子项目说明
│   ├── majiyong-voc-report.md                 ← v1 VOC 深度分析
│   ├── majiyong-closing-report.md             ← v2 结案报告 (Markdown)
│   ├── majiyong-closing-report.html           ← v2 结案报告 (交互式 HTML)
│   ├── majiyong-new-opportunities.md          ← v2 新机会挖掘
│   ├── scripts/
│   │   ├── collect-majiyong.js                ← 采集 (双 sheet · 293 条)
│   │   ├── gen-majiyong-report.js             ← v1 报告生成
│   │   ├── gen-majiyong-closing-report.js     ← v2 结案报告数据层
│   │   └── gen-majiyong-closing-render.js     ← v2 HTML+MD 渲染层
│   └── data/
│       ├── raw-merged.json                    ← 293 行 + 评论
│       ├── notes/         (293 个)            ← 短链解析缓存
│       ├── comments/      (233 个)            ← 评论缓存
│       ├── audit.log
│       └── collect-run.log
│
└── node_modules/                              ← 共享依赖 (xlsx)

三、可复现命令

1) 安装依赖 (仅首次)

npm install --no-save xlsx

2) 舒华跑步机案例

# 采集 (默认 24h 缓存,加 --force 强抓)
node shuhua/scripts/collect-shuhua-voc.js

# 生成 v1 VOC 报告 (Markdown)
node shuhua/scripts/gen-shuhua-report.js

# 生成 v2 结案报告 (HTML + MD,自动)
node shuhua/scripts/gen-shuhua-closing-report.js

输出: 4 份交付物均位于 shuhua/ 目录。

3) 马记永牛肉面案例

# 采集 (293 条 · ~10 分钟首次,带缓存)
node majiyong/scripts/collect-majiyong.js

# 生成 v1 VOC 报告
node majiyong/scripts/gen-majiyong-report.js

# 生成 v2 结案报告 (HTML + MD,会自动调用 render 层)
node majiyong/scripts/gen-majiyong-closing-report.js

采集可选参数:

  • --force 强制重抓 (绕过 24h 缓存)
  • --limit=N 仅采集前 N 条 (调试用)
  • --only-resolve 只解析短链,跳过评论拉取

四、6 阶段 VOC 工作流

本仓库验证的可复用方法论:

阶段 步骤 输出
1 数据接入 xlsx 解析 (单/多 sheet 自适应) → 内部行结构
2 短链解析 xhslink → 真实 noteId (302 跳转 + 直连双策略)
3 评论抓取 公开代理 API + Bearer Token + 24h 文件缓存
4 数据合并 / 去重 xlsx + noteId + 主评论 + 子评论 → raw-merged.json
5 主题词典 + 规则标注 12 主题词典 + 噪声识别 + 信号提取
6 多形态产出 v1 VOC 报告 (MD) / v2 结案报告 (HTML+MD) / 新机会挖掘 (MD)

关键技术细节:

  • API 响应嵌套结构: data.data.data.comments[] (3 层 data 包装,易踩坑)
  • 评论字段: id, content, time, like_count, ip_location, user.nickname, sub_comments[]
  • Token 来源: 环境变量,见 scripts/collect-shuhua-voc.js

五、关键发现 (TL;DR)

舒华跑步机 (shuhua-*)

  1. 评论维度严重缺失 — 总互动率 5.37% 表面达标,但点赞:收藏:评论 ≈ 30:12:1
  2. 内容形态 CPE 差距 2.3 倍 — 干货教程型 (¥9.97) > 效果展示型 (¥10.13) >> 泛流量型 (¥22.5)
  3. 三个未被回应的高价值方向 — 扰邻焦虑 / 专业参数 / 365 天身材日记
  4. Top 5 P0 新机会: A1 静音减震 RTB / A2 坡度参数明牌 / C1 KOC 性别年龄重构 / B3 泛流量型升级 / E1 投后 24h 抓取

马记永牛肉面 (majiyong/majiyong-*)

  1. 「非美食创意 KOL」单篇 1.6x 美食探店 — Top KOL 单篇互动 ≈ KOL 中位 4 倍
  2. 「新鲜菜」心智渗透成功 — 自发命中 64 条,超越价格主题 (43 条)
  3. 57 条「我们这没有」评论 = 免费选址数据 — 应反向输入拓店决策
  4. Top 5 P0 新机会: C1 求开店转私域 / A1 鲜菜可视化 / B1 探店 5 赛道差异化 / D1 KOC 长尾止损 / E1 主题词典版本化

六、4 份交付物的差异化定位

文档 受众 用途 形态
*-voc-report.md 数据分析师 / 产品 过程性深度分析,完整数据透视 Markdown
*-closing-report.md 项目经理 / 老板 结案汇报,优点/不足/建议三段式 Markdown
*-closing-report.html 老板 / 客户 演示版 (暗色 + ECharts + 词云,可滑动汇报) HTML
*-new-opportunities.md 业务团队 / 下一轮规划 前瞻性新机会,17 个 P0/P1/P2 行动项 Markdown

两两关系:

  • voc-report 偏过程,closing-report 偏结论 — 互补
  • closing-report 看过去,new-opportunities 看未来 — 互补
  • .md 给团队,.html 给老板 — 同源不同形

七、git 仓库说明

仓库已通过 git 版本管理。建议提交规范:

  • feat: 新增交付物或脚本
  • fix: 修复采集 / 生成 bug
  • data: 重新采集后的数据更新
  • docs: 报告文档迭代

.gitignore 应排除 node_modules/shuhua/data/notes/shuhua/data/comments/majiyong/data/notes/majiyong/data/comments/ (缓存文件,可重建)。


八、下一步迭代建议

  1. 抽取共享模板层 — 当前两个 gen-*-closing-report.js 有约 70% 重复代码 (CSS / wordcloud / Section 框架),可抽到 lib/closing-report-template.js
  2. 主题词典外置 — 把 12 主题正则从代码中外置为 topics/{shuhua,majiyong}.json,便于业务侧维护
  3. 竞品对照基线 — 抓取陈香贵 / 张拉拉 / 易跑 / 麦瑞克 Top 50 笔记,建立心智份额对照
  4. 投后多次快照 — 24h / 7d / 30d 三次抓取,捕捉博主自删 / 长效衰减信号

基于 ~1,629 条真实小红书公开评论 + 336 篇笔记元数据 · 可复用 VOC 工作流 v2 · 2026-05-14