视频数据清洗
Akke 项目 · 2026-06-04 · 从「抓回来的脏数据」到「能打分的干净评论」全过程 —— 抓取去重 → 噪音预过滤 → 互动补数 → VIP 高频复扫
一句话:抓回来的视频评论是脏的——有重复、有同行刷的、有纯表情玩梗、有问家电问自建房跑题的,还缺互动数。「视频数据清洗」就是在送大模型打分之前,把这些噪音/重复挡掉、把缺的互动数补上,再把「值得反复回头扫」的高价值视频挑出来高频复扫。清洗做得好,下游意向打分又准又省钱,运营拿到的 leads 才干净。本文按「一条评论从抓回来到入池」的顺序,逐层讲清洗规则并举真实例子。
CASE先看一条视频的清洗实况
以好号 设计师_鹿鹿 的视频《156平的家…意式装修案例》为例,看评论从抓回来到"能用"被洗了什么:
抓回来
首抓往前收 7 天评论;f2 翻页会返回重复行 → 两层去重(同"内容+作者"只留一条)。
滤噪音
一批评论被规则直接判无关、不送大模型:纯表情「[赞][比心]」、同行号作者「XX全屋定制工厂」、跑题「想买电视 55 寸」、套话「你们有工厂吗」。
留真买点
真实高意向评论 「135装这款硬装需要多少钱」 过清洗 → 送打分 → 高意向 93 → 成为一条 lead。
清洗的意义:把"脏的"挡在打分之前(省钱 + 不污染池子),把"真买点"准确留下。下面逐层讲清洗规则 + 更多真实例子。
SECTION 01为什么要清洗 · 一条视频的真实数据
先看一组现状(2026-06-04 全库实时):
视频累计
21,574
其中 3,613 条抓到过评论
核心矛盾:每 100 条评论里只有约
8 条是高意向潜客,其余一大半是噪音。如果把这 31,504 条
全送大模型打分,既贵又慢,而且没洗过的脏数据会污染高意向池(同行刷的、跑题的混进来)。所以要在打分前先做
清洗:
结构化能判死的(重复 / 同行号 / 纯表情 / 跑题品类)直接代码层挡掉,只把"可能有意向"的送大模型。意向打分本身见
高中低意向打分,本文只讲它
之前的清洗。
SECTION 02全景原理图 · 从抓回来到入池
一条评论从抖音抓回来,要过 5 道清洗/加工,才进到运营能用的池子:
①
抓取层 · 时间窗口 + 去重 首抓往前看 7 天全收;复扫只补增量;同一条 (内容,作者) DB 已有 / 本批重复的,去掉(§3)
↓
②
噪音预过滤 · 送大模型前直接 skip 同行号作者 / 套话查厂底 / 竞品广告 / 纯表情玩梗 / @AI / 家电·自建房跑题 → 代码层判 无关,不花钱送 LLM(§4,核心)
↓
③
互动数补齐 用 f2 签名抓视频原生赞/评/转/藏,给"爆火"判定用(§5)
↓
④
意向打分(不在本文) 过了预过滤的评论 → 大模型判 高/中/低/无关 →
意向打分
↓
⑤
VIP 分类 + 高频复扫 把"已验证高转化 / 正在爆火"的视频挑成 VIP,每小时回头复扫接住后续新潜客(§6、§7)
②是"减"(把脏的挡掉),③是"补"(把缺的互动数填上),⑤是"挑 + 反复洗"(值钱的视频反复回头扫)。下面逐层拆。
SECTION 03抓取层:时间窗口 + 去重
同一条视频会被反复抓(首抓 + 后续复扫),所以抓取层先解决两件事:抓多久内的评论、怎么不重复入库。
| 机制 | 规则 | 大白话 |
| 首抓窗口 7 天 | 第一次见到一条视频,往前收 7 天的评论(首抓无视 24h 默认窗) | 评论不是一次来齐,第 2–7 天还在冒;首抓只收 24h 会漏掉 92%(5-31 实测) |
| 复扫走增量 | VIP 每小时复扫只抓"上次扫过之后"的新评论(since=上次 scraped_at) | 不每次翻 7 天全窗,省接口、能每小时跑 |
| 30 分钟短路 | 同一视频 scraped_at 在 30 分钟内 → 本轮跳过(SCRAPE_SKIP_RECENT_MINUTES=30) | 多个 cron 同时选中同一条,也只抓一次;评论变化没那么快 |
| 两层去重 | 按 (评论内容, 作者) 去重:① DB 里已有的不重入 ② 同一批 INSERT 内重复的只留一条 | f2 翻页 + 顶层/子回复重叠会返回重复行,实测 7d 数据里 13.5% 是同毫秒重复 |
举例:「装修帮」某条视频,首抓往前收 7 天得 781 条评论,f2 翻页过程中有约 100 条 (内容,作者) 完全相同的重复行(翻页重叠 + 顶层评论在两个阶段各返回一次)→ 去重后实际入库 ~680 条。之后每小时复扫只补"上次之后"新冒的几条,不再翻整 7 天。
一个 badcase(已处理):爆款视频的高意向常藏在嵌套子回复里,但顶层父评论若被时间窗丢掉,子回复会"孤悬"无处挂。解法:顶层即使被 cutoff 过滤,也记到 top_level_with_replies,复扫时反查把新子回复挂回已有的老顶层;挂不上的子回复宁可跳过也不孤存(防脏数据)。
SECTION 04噪音预过滤(核心)· 送大模型前直接 skip
这是清洗最值钱的一层:能用规则判死的噪音,不送大模型——既省 LLM 成本,又不让它们污染高意向池。命中下面任意一类,直接标 无关。下面每类都附真实会被过滤的评论。
① 同行号作者(看昵称)—— 昵称含定制/工厂/建材/设计师/聊房等特征词的,整条 skip
会被过滤的作者昵称
✗ 「乐清全屋定制工厂」 · 「佛山伟鑫发家具五金」 · 「绮美家纺(接私人订制)」 · 「XX设计师」 · 「谢大叔→聊房」(房产博主) · 「善瑞整脊理疗馆」
匹配 定制/工厂/批发/家纺/五金/设计师/聊房/理疗馆… 等 ~80 个特征词(peer-filter)
② 同行套话查厂底(看内容)—— 装成买家、实为同行打听对方供应链
会被过滤的评论内容
✗ 「你自己的厂吗」 · 「你们有工厂吗」 · 「你们做厂多少年」 · 「直接找厂家」
这类买家话术干净、昵称也干净,靠"打听厂底"的句式正则才抓得住
③ 竞品广告 / 引流(招商、塞微信、工厂直供)—— 单信号强匹配 + 双信号组合都判广告
会被过滤的评论
✗ 「诚招代理 全国招商」 · 「加微信报价」 · 「工厂直供 欢迎来厂参观」 · 「湖州木之春原木,板式全屋定制,源头工厂发货」
"行业词 + 源头/工厂 + 促销" 任意两项组合即判广告(worker comment_filter)
④ 纯表情 / 通用赞美 / @AI(低信号,反向评论也无法 echo)
会被过滤 vs 会放行
✗ 拦:「[赞][比心][玫瑰]」(纯表情) · 「不错 / 很好 / 漂亮」(通用赞美) · 「你好」 · 「@豆包 帮我总结」(调 AI)
✓ 放行:「价格」 · 「多少」 · 「怎么做」 —— 即使只有 2–3 字,含问询词就放行("价格报一下" 5 字仍是高价值意向,不能一刀切按长度砍)
⑤ 非定制品类 / 跑题(家电、自建房硬装、促销节点)—— 跟全屋定制零交集
会被过滤的评论
✗ 「家电到底海尔美的还是格力」 · 「想买电视 55 寸」 · 「老板 E2S 油烟机咋样」(家电型号) · 「自建房外墙防水咋做」 · 「618 蹲一波优惠券」
匹配家电品类/品牌/型号、自建房/地基/承重、促销节点(618/双11/满减)等
两个真实 badcase + 怎么修的:
- 误伤"老板":用户常以「老板,多少钱」称呼装修师傅(vocative 敬称),但"老板"也是个家电品牌(老板电器)。一刀切拦"老板"会误杀真买家。修法:只拦带型号的「老板E2S / 老板L5P / 方太V10」,不拦光秃秃的"老板"。
- 误伤"电视柜":拦"电视"会连带误杀"电视柜 / 冰箱位"(这是定制需求)。修法:用动词短语「想买电视 / 放洗衣机」兜,不拦纯名词。
口径诚实说:这两层(worker 抓取时 + analyze 打分前)规则会持续补词——词库越全,漏判/误杀越少,但永远做不到 100%,所以大模型那层 + 发送前人工看主页都是兜底。
⚠️ 规则抓不住的一类:同行卖家伪装成买家。昵称干净、评论是满分买家话术("我需要装修,怎么联系你")→ 文本层判高意向,实为收割联系方式/反向推销。识别信号:① 主页/视频在卖灯具·建材·全屋定制(需发送前看主页);② 主动塞自己微信的(真买家是问"你微信多少",卖家是甩"我的vx是xxx");③ 同一句"我需要装修"刷多个不同达人视频。兜底 = 发送前点头像看一眼主页,是卖家就 discard,不交销售。
SECTION 05互动数补齐(engagement backfill)
清洗不只是"减噪音",也要"补缺的数"。视频的原生赞 / 评 / 转 / 藏是判断"哪条在爆火"的关键,但抓评论时不一定带回来。所以加了一条专门补互动数的通道:
| 维度 | 做法 |
| 怎么抓 | 用 f2 签名 + 匿名 cookie 调抖音 aweme/detail,拿 digg/comment/share/collect 四个数(蝉妈妈互动源 5-28 封了之后的替代路) |
| 什么时候补 | 抓 tier1 好号视频时搭车顺手抓一次;stats_fetched_at 过 24h 才重抓(省接口) |
| 限流护栏 | 批量抓会撞抖音限流 → 放慢到温和并发;每号至多 N 条 + 全局上限,可一键 kill |
当前已给 712 条视频补上真实互动数(仍在随每小时复扫搭车持续涨)。"爆火"判定的 Top80 就是从这批有互动数的视频里选——覆盖涨上去,爆火筛得越准。
互动分公式:赞×1 + 转×2 + 评×5 + 藏×2 例:赞1200/转80/评95/藏210 = 1200+160+475+420 = 2255 分。评论权重最高(×5)——观众停下来打字问价/问工艺=最强买点信号;点赞最廉价(手一滑)×1;抖音网页端不给播放量(恒0)故不计。(2026-06-02 从旧权重"转×5·评×3"改成"转×2·评×5",把"评论"这个真买点提到第一。)
SECTION 06VIP 三类分类(并集 = VIP)
洗干净 + 补完数之后,把"值得每小时回头反复扫"的高价值视频挑成 is_vip。一条视频命中任意一类即为 VIP,每天全库重算一次:
| 类 | 门槛 | 大白话 | 当前命中 2026-06-04 |
| A 高意向数高 | 高意向评论 ≥ 5 条 | 已实打实产过好几个潜客的视频 | 90 |
| B 高意向占比高 | 总评论 ≥ 6 且 高意向占比 ≥ 20% | 评论不多但"质量浓度"高(地板设 6 防 1/1=100% 霸榜) | 113 |
| 爆火 | 互动分(赞1·转2·评5·藏2)全局 Top 80 | 新爆款早筛,发布第 1 天靠流量就能进(那时还没攒评论) | 80 |
| 三类并集 = VIP 总数 | 225 |
(单类相加 90+113+80=283 > 并集 225,因为有视频同时命中多类,如"高意向数够 + 占比也够"。)
门槛怎么定的(真实数据):A 取 ≥5 —— 高意向数分布从"有过高意向的视频"陡降到 ≥5 的少数,5 是"稳定产 lead"的拐点;B 取 20% —— 在总评论≥10 的池子里高意向占比 p85 约 20%,挑明显高于平均的;爆火取 Top80 —— 补 A/B"要先攒出评论才算得出"的滞后,互动数发布第 1 天就有。⚠️ 诚实说:评论盘子仍偏薄,这些门槛是当前数据下的合理起点,评论入库量涨上来后要复评。
SECTION 07高频复扫 + VIP 生命周期
挑出 VIP 后,对这批每小时增量复扫一次(普通视频按号轮转,慢得多)。为什么要快:高意向潜客"保鲜期"很短——实测无头像可加微的命中率 6 小时 100% / 24 小时 50% / 48 小时 0%,1 小时抓到 vs 隔天差一倍。复扫派单标最高优先级插队,保证新鲜评论优先被抓。
一条视频的 VIP 生命周期(爆火早筛 → A/B 接力 → 休眠 → 退休):
发布当天
被发现 + 搭车抓互动数 —— 抓它评论时顺手抓一次原生赞评转藏,于是有了互动分。
第 1–2 天
互动冲进 Top80 → 当天进 VIP —— 哪怕高意向还是 0,只要互动分排进前 80 就打 is_vip(早筛),当天起被每小时复扫。
第 2–7 天
A/B 接力,从"早筛"转"已验证" —— 复扫攒出评论后,高意向够 5 条(A)或占比够 20%(B)就命中;即使热度退了、互动掉出 Top80,也因"已验证高转化"继续留 VIP。
休眠
7 天没新评论 → 暂停复扫但留标 —— 连续 7 天产 0 评论的 VIP,每小时还扫纯属白扫 → 暂停复扫省无效抓取(VIP_RESCAN_ACTIVE_DAYS=7),is_vip 标保留,再冒新评论自动恢复。零 lead 损失(死视频本就不产评论)。
退休
三类都不满足 → 次日摘标 —— 每天重算时,互动掉出 Top80 且 A/B 也不达标的,is_vip 置回 false,把预算让给新的高价值视频。
一句话:爆火 = 早筛新爆款(看流量,第 1 天进),A/B = 补筛已验证高转化的老视频(看评论,滞后但准)。好视频通常先靠爆火进来、再被 A/B 接住——即使不再火,只要还在产潜客就一直被高频复扫。
SECTION 08哪些源号产了最多高意向(举例)
清洗 + VIP 复扫的价值,最终落在"哪些号的视频真产高意向潜客"。下面是按名下累计高意向评论数排序的 Top 源号(2026-06-04 实库)——绝大多数是 tier1 高频好号,正印证"把抓取预算压在少数好号上"是对的:
| 源号 | 品类 | tier | 名下高意向评论 |
| 一起装修网 | 平台号 | tier1 | 126 |
| 小刘厂长美式家具 | 本地号 | tier1 | 97 |
| 西安老王聊装修 | 本地号 | tier1 | 96 |
| 海哥—用心讲装修 | 知识号 | tier1 | 79 |
| 石材橱柜板材批发 | 工厂号 | tier0 | 79 |
| 设计师阿爽 | 知识号 | tier1 | 71 |
| 装修帮 | 知识号 | tier1 | 68 |
| 瑞卡彩砂艺术涂料 | 本地号 | tier0 | 68 |
| 灿哥聊装修 | 知识号 | tier1 | 64 |
读这张表:① 头部高度集中——Top 几十个号贡献了绝大部分高意向(少数好号撑起整盘);②
9 个里 7 个是 tier1,"按近 7 天高意向贡献升 tier1 高频抓"的逻辑被实数验证;③ 品类多样(平台号/本地号/知识号/工厂号都能出好号)——
名字品类只是入池线索,真高产还得抓了看产出,所以"石材橱柜板材批发"这种工厂号也能进前列。号源怎么打分/分 tier 详见
号源打分与筛选。
SECTION 09验证 · badcase · 待办
已验证(上线后实跑):
复扫见效
每小时复扫真在接住后续评论 —— VIP 复扫上线后约 1.5 小时即从 VIP 视频捞回 1,337 条新评论;当前 VIP 225 条在高频复扫中。
打分追上
未分析评论从 19% → 1.4% —— 清洗 + 打分吞吐已跟上,31,504 条评论里仅 436 条排队待分析(newest-first,新 lead 优先)。
扫描覆盖
全库 95% 视频扫过 ≥1 次(tier1 ~99%)—— 印证"广扫全库存"是重复劳动,聚焦 tier1 + VIP 复扫即可。
| 问题(badcase) | 优化方式 | 进展 |
| 同毫秒重复入库(7d 数据 13.5%) | (内容,作者) 两层去重:DB 已有 + 本批内 | ✅ 已上线 |
| 嵌套子回复孤悬(顶层被窗口丢) | 记 top_level_with_replies,复扫反查挂回老顶层 | ✅ 已上线 |
| "老板"vocative 误判家电品牌 | 只拦带型号的"老板E2S",不拦光秃"老板" | ✅ 已修 |
| 死 VIP 视频每小时白扫(44 个产 0 评论) | 活跃过滤:只复扫近 7d 还产评论的 | ✅ 已上线 |
| 同行伪装买家文本层抓不住 | 发送前人工看主页 + 主动塞微信判卖家 | 人工兜底 |
下一步待做:
| 优先级 | 动作 | 为什么 |
| 高 | 互动数从 712 铺向全量好号视频 | 爆火 Top80 现从 712 里选,覆盖涨上去筛得更准;靠每小时复扫搭车 + 分批轻量补持续涨 |
| 高 | 盯下游产出:复扫前后"新入库高意向数"对比 | 验证每小时复扫真接住更多新鲜潜客(不只看部署绿) |
| 中 | 评论盘子涨上来后复评 3 类门槛 | 现门槛按"偏薄评论池"定,覆盖度爬坡后 ≥5 / 20% / Top80 都要重算 |
| 中 | 持续补噪音过滤词库(同行后缀 / 家电品类) | 词越全漏判/误杀越少;但 100% 做不到,大模型 + 人工是兜底 |
| 中 | VIP 视频监控页(先不做) | 等数据攒厚再评估给运营做可视化看板;先把后台调度跑顺 |