先别把“正常”当作结论。多数关键词密度工具只统计你给它的那份文本,或者只抓取它能拿到的那一版页面;用户故障却可能来自另一份文本、另一版页面或另一条渲染路径。复查条件要围绕这个差异来构造:先固定“检测的输入”,再固定“用户看到的输出”,两者不一致时,问题几乎一定在输入或获取环节,而不在密度阈值本身。
这两种情况的复查动作完全不同,选错方向会白忙一轮。
输入不一致的典型证据:你检测的是后台编辑器里的正文,而用户看到的是模板拼接后的页面;或者你粘贴的是纯文本,工具统计不到被标签、脚本、注释包裹的内容。此时密度数字本身没错,错的是它算的不是用户实际读到的那份内容。
获取不一致的典型证据:同一页面,工具抓到的版本与你手动打开看到的版本不同,例如返回了简化版、占位内容或旧缓存。此时数字同样“正常”,但它描述的是另一份文档。
区分方法很直接:把工具实际处理的原始文本导出或复制出来,与用户可见文本逐段对照。如果段落能一一对应、只是统计口径不同,属于输入不一致;如果段落对不上、内容明显是另一版,属于获取不一致。这一步的产出决定下一步——前者去修检测口径,后者去修获取路径。
此时复查的核心是让检测输入与用户可见内容对齐,而不是反复调阈值。
一个假设例子:某页面工具显示密度 2.1%,用户却反馈“整段关键词堆在一起”。取出用户可见文本后发现,模板在正文前插入了推荐位标题,里面重复了同一词组,而工具抓取时把它算进了正文。动作是把推荐位排除后重算,结果降到 1.4%,与用户感受一致——这说明下一步该修的是模板拼接位置,而不是继续调密度目标值。
如果故障只在部分用户那里出现,或者你无法直接取得他们看到的那一版,复查条件要改成“可复现的最小差异集”。
需要提醒的是,抓取量或请求量下降、某项统计归零,都不能单独证明你的处理正确。它也可能来自缓存命中、抓取频率限制、页面被合并,或者工具本身对某类响应做了简化。要证明因果,至少要有“同一变量改变前后,文本摘要确实不同”这一条证据。
构造复查条件的实际价值在于可重复。建议每次复查至少记四项:检测所用的文本来源、获取方式、对照的可见版本、以及本次唯一的变动点。下次故障复现时,先比对这四项,而不是重新从密度数字猜起。
如果四项都一致而故障仍在,那说明问题大概率不在密度统计这一层,应转向渲染、缓存或权限等相邻环节。此时密度工具给出的“正常”只是一个不再有解释力的信号,继续围绕它调整没有意义。
把复查条件固定下来之后,你得到的不是一次性的答案,而是一条能反复使用的判断路径:输入对不上就修口径,获取对不上就修路径,两者都对不上就换排查层。