- 「cloaking checker」没有魔法按钮——检测的本质是对比爬虫视角和用户视角的差异。
- 由浅入深:切 User-Agent → 切 IP/地理 → 用官方工具看爬虫视角 → 对比渲染后 DOM。
- 内容不同不等于 cloaking;关键看差异是否专门针对判定系统、是否蓄意隐藏。
- 投广告就定期自查落地页,确认没有无意中产生「审核 ≠ 用户」的差异。
检测的核心:找「视角差」
所有 cloaking 检测,本质都是同一件事:用「判定系统会用的身份」取一次页面,再用「真实用户的身份」取一次,对比两次结果。差异越大、越指向变现,越可能是 cloaking。
动手方法(从简到深)
1. 切换 User-Agent
用浏览器开发者工具或 curl 把 UA 改成 Googlebot / facebookexternalhit 等爬虫标识,再对比正常 UA 的结果。粗糙的 cloaking 只看 UA,这一步就能抓到。命令示例:curl -A 'Googlebot' https://example.com 对比 curl -A 'Mozilla/5.0' https://example.com。
2. 切换 IP / 地理位置
更聪明的 cloaking 按 IP 段、ASN、数据中心标识、地理位置判定。用不同地区的住宅代理 vs 数据中心 IP、或平台审核常用的地区 IP 访问,看页面是否变化。
3. 用官方工具看「爬虫眼中的页面」
- Google Search Console 的网址检查——看 Googlebot 实际抓到的渲染结果。
- Rich Results / Mobile-Friendly 测试——以 Google 渲染器视角取页面。
- Facebook 分享调试器——看 facebookexternalhit 抓到的内容。
4. 对比渲染后的真实内容
高级 cloaking 用 JavaScript 在用户端二次替换内容。光看 HTML 源码不够——要对比「爬虫取到的初始 HTML」和「真实浏览器执行 JS 后的最终 DOM」。差异巨大就是强信号。
哪些信号指向 cloaking
- 爬虫看到的是规规矩矩的内容页,用户被跳转或看到完全不同的变现页。
- 按地区/设备/来源差异极大,且差异方向总是「对审核更干净」。
- 页面带有 referrer / 参数 / 时间窗判定逻辑,只在特定条件露出真实页。
- 同一 URL 多次访问结果不稳定,疑似按访问次数或指纹切换。
注意:内容不等 ≠ 一定是 cloaking。个性化、A/B 测试、本地化都会让页面不同。判定 cloaking 的关键是「差异是否专门针对判定系统、是否蓄意隐藏」。
自查:保护好自己的账户
如果你投广告,定期用上面的方法自查落地页——确认你(或你的建站工具、第三方脚本、联盟跳转)没有在无意中产生「审核看到的 ≠ 用户看到的」。这和测试斗篷工具拦截准确率是两件事:那是测你的工具有没有拦住 bot,这是确认你整体没有越过合规线。要系统理解平台怎么抓,参见平台如何检测 cloaking。
常见问题
有没有一键检测 cloaking 的工具?
有一些在线 checker 和 SEO 工具能做基础的 UA 对比,但都无法覆盖 IP、地理、JS、指纹等高级手法。可靠检测仍需人工多视角对比。
用 curl 改 User-Agent 就能抓到 cloaking 吗?
能抓到最粗糙的一类。但只看 UA 会漏掉按 IP、地理、JS 渲染、指纹判定的高级 cloaking——需要叠加多种方法。
我怎么确认自己的落地页没在无意中 cloaking?
用 GSC 网址检查和 Facebook 调试器看爬虫视角,再用真实浏览器对比;确认第三方脚本、建站工具、联盟跳转没有按访客身份分发不同内容。