用途:采集规划 + 执行阶段 · 把 H1-H8 假设翻译成关键词矩阵,批次跑通多平台真实 VOC 数据。 阶段:Phase 3 + Phase 4 · Collection Planning + Execution 预计耗时:1-2 小时规划 + 50-120 分钟执行 输入:
2.VOC 深度思路.md输出:
docs/<品类>/3.采集矩阵.md(规划文档)docs/<品类>/raw/_merged.json(合并后数据)docs/<品类>/raw/audit.log(采集执行日志)docs/<品类>/3.采集执行摘要.md(执行汇报)
你是一位VOC 采集架构师 + 数据工程师。核心信念:
_merged.json + 跑 audit 初步检查2.VOC 深度思路.md 竞品地图填)| 批次 | 目标 | 关键词来源 | 每 kw 评论数 | 预估总量 | 预计耗时 |
|---|---|---|---|---|---|
| P0 | 本品 + 头部竞品 | 象限 1 + 象限 2 前 3-4 个 | 80-150 | 1000-1500 | 15-30 min |
| P1 | 长尾 + 场景 | 象限 2 长尾 + 象限 3 前 5 | 50-100 | 1000-1500 | 20-40 min |
| P2 | 决策 + 相邻 | 象限 4 + 象限 3 剩余 | 30-80 | 500-1000 | 15-30 min |
| 合计 | ~20-25 kw | ~3000-5000 | 50-100 min |
不必每批都跑完:如果 P0 已经覆盖全部 H 假设,P2 可以减配。
每个 kw 分配到 1-2 个主平台,避免重复。示例:
| 关键词 | 小红书 | 抖音 | 京东 | 天猫 | 备注 |
|---|---|---|---|---|---|
| 江中乳酸菌素片 儿童 | P0/15 | P0/25 | - | P2/5 | 主采 |
| 妈咪爱 | P0/12 | - | P1/10 | - | 头部竞品 |
| 合生元 益生菌 | P0/12 | P0/8 | - | - | 高端替代 |
| 宝宝腹泻 | P1/8 | P1/10 | - | - | 场景 |
| 幼儿园 腹泻 | P1/6 | P1/8 | - | - | 场景 |
| ... |
写法:P<批次>/<目标笔记数>
每次合并完跑完 collect --merge,都要检查:
| 假设 | 预期 ≥ | 实际命中 | 缺口关键词 |
|---|---|---|---|
| H1 · 头部竞品挫败 | 200 | ? | 妈咪爱 / 合生元 |
| H2 · 剂型 / 口感 | 150 | ? | 乳酸菌 咀嚼片 |
| H3 · 触发场景 | 200 | ? | 幼儿园 腹泻 / 抗生素 |
| H4 · 情绪焦虑 | 150 | ? | 家长焦虑 / 孩子生病 |
| H5 · 社会价值 | 100 | ? | 妈妈推荐 / 朋友圈 |
| H6 · 无人地带 | 100 | ? | 三轴维度 |
| H7 · 新人群 | 100 | ? | 入园 / 分龄 |
| H8 · 新剂型 | 100 | ? | 咀嚼 / 卡通 / IP |
缺口回路:任一 H 假设 < 预期 × 50%,必须回到 Phase 3 补关键词。
# 1. TikHub 凭据
node -e "console.log(require('fs').readFileSync(require('os').homedir()+'/.openclaw/skills/xiaohongshu-search-notes/api-config.json','utf8'))"
# 2. VOC Skill 凭据(可选,抖音采集需要)
node -e "console.log(require('fs').readFileSync(require('os').homedir()+'/.openclaw/voc-credentials.json','utf8'))"
# 3. VOC Skill 预飞(如果工具存在)
node $env:USERPROFILE/.openclaw/tools/voc-token-preflight.js
# 4. 先试 1 个 kw 验证链路
node scripts/tools/<品类>-collect.js --test
预飞 FAIL 处理:
currentToken,可能过期# 分批执行(推荐)
node scripts/tools/<品类>-collect.js --batch=1 # P0 · ~20 min
# 跑完看 audit.log,如有 ≥ 3 个 ERR 先修
node scripts/tools/<品类>-collect.js --batch=2 # P1 · ~30 min
node scripts/tools/<品类>-collect.js --batch=3 # P2 · ~20 min
# 合并
node scripts/tools/<品类>-collect.js --merge
# 补采(如果某假设覆盖不足)
node scripts/tools/<品类>-collect.js --batch=1 --force # 强制重跑
每批跑完必看 docs/<品类>/raw/audit.log:
grep -c "OK" docs/<品类>/raw/audit.log # 成功条数
grep -c "ERR" docs/<品类>/raw/audit.log # 失败条数
grep -c "SKIP" docs/<品类>/raw/audit.log # 缓存跳过
红灯标准:
meta.count < 2000 → 补采3.采集执行摘要.md复制 templates/4.采集执行摘要.template.md,填写:
_merged.json 存在且 items.length >= 2000(简单项目可放宽到 1500)3.采集执行摘要.mdaudit.log → 后续发现一半 ERR../03-phase3-collection-planning.md../04-phase4-collection-execution.md../templates/collect.template.js../templates/3.采集矩阵.template.md../templates/4.采集执行摘要.template.md