upio.ai / Akke / 视频数据清洗

视频数据清洗

Akke 项目 · 2026-06-04 · 从「抓回来的脏数据」到「能打分的干净评论」全过程 —— 抓取去重 → 噪音预过滤 → 互动补数 → VIP 高频复扫
00 真实案例 01 为什么要清洗 02 全景原理图 03 抓取层:窗口 + 去重 04 噪音预过滤(核心·举例) 05 互动数补齐 06 VIP 三类分类 07 高频复扫 + 生命周期 08 头部源号举例 09 验证 · badcase · 待办
一句话:抓回来的视频评论是脏的——有重复、有同行刷的、有纯表情玩梗、有问家电问自建房跑题的,还缺互动数。「视频数据清洗」就是在送大模型打分之前,把这些噪音/重复挡掉、把缺的互动数补上,再把「值得反复回头扫」的高价值视频挑出来高频复扫。清洗做得好,下游意向打分又准又省钱,运营拿到的 leads 才干净。本文按「一条评论从抓回来到入池」的顺序,逐层讲清洗规则并举真实例子。
CASE先看一条视频的清洗实况

以好号 设计师_鹿鹿 的视频《156平的家…意式装修案例》为例,看评论从抓回来到"能用"被洗了什么:

抓回来
首抓往前收 7 天评论;f2 翻页会返回重复行 → 两层去重(同"内容+作者"只留一条)。
滤噪音
一批评论被规则直接判无关、不送大模型:纯表情「[赞][比心]」、同行号作者「XX全屋定制工厂」、跑题「想买电视 55 寸」、套话「你们有工厂吗」。
留真买点
真实高意向评论 「135装这款硬装需要多少钱」 过清洗 → 送打分 → 高意向 93 → 成为一条 lead。
清洗的意义:把"脏的"挡在打分之前(省钱 + 不污染池子),把"真买点"准确留下。下面逐层讲清洗规则 + 更多真实例子。
SECTION 01为什么要清洗 · 一条视频的真实数据

先看一组现状(2026-06-04 全库实时):

视频累计
21,574
其中 3,613 条抓到过评论
评论累计
31,504
已分析占 98.6%
无关噪音
55%
17,333 条 · 绝对大头
高意向
7.7%
2,440 条 · 真正值钱的
核心矛盾:每 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名下高意向评论
一起装修网平台号tier1126
小刘厂长美式家具本地号tier197
西安老王聊装修本地号tier196
海哥—用心讲装修知识号tier179
石材橱柜板材批发工厂号tier079
设计师阿爽知识号tier171
装修帮知识号tier168
瑞卡彩砂艺术涂料本地号tier068
灿哥聊装修知识号tier164
读这张表:① 头部高度集中——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 视频监控页(先不做)等数据攒厚再评估给运营做可视化看板;先把后台调度跑顺