网页抓取诊断,模拟Googlebot、Bingbot、Baiduspider与AI爬虫真实抓取,判定该页能否被抓取与收录:解读 robots.txt 命中规则、跟随跳转链、识别人机校验页拦截,并检查 noindex 与 canonical。支持批量检测。
输入任意页面地址,选一个搜索引擎或 AI爬虫抓取测试,看它能否被搜索引擎抓,抓到之后会不会收录 —— 一次性把 robots.txt 规则、HTTP 响应、noindex 与 canonical 全查清
每行填一个地址,逐条检测并汇总成表格。适合发布前把新站的栏目页、文章页一次性过一遍,看看哪些页面被误屏蔽、哪些被 noindex。
💡 相关工具:如果你想从「整个站点」的角度检查 robots.txt 本身写得对不对(乱码行、无效规则、Sitemap 声明、AI 爬虫策略),请使用➡️ robots.txt 检测与生成工具。本工具负责单个页面的抓取判定,两者配合使用效果最好。
输入一个页面地址,工具会做三件事:读取该站点根目录的 robots.txt 并判断这个路径对该爬虫是允许还是禁止;用该爬虫真实的 User-Agent 去请求这个页面,拿到状态码与响应头;解析页面里的索引控制信号。最后合成一句结论 —— 能被抓取吗,能被收录吗。
| 检测项 | 能看到什么 |
|---|---|
| robots.txt 判定 | 这个路径命中了哪一条 Allow / Disallow、规则写在第几行、用的是哪个 User-agent 分组,以及为什么是它胜出(最具体匹配优先、同长度 Allow 优先) |
| 真实抓取结果 | 以该爬虫的 UA 请求后返回的真实状态码、完整跳转链、最终地址、Content-Type、服务器标识与返回体积 |
| 爬虫被拦截检测 | 识别 CDN / WAF 返回的「人机校验页」—— 这类页面状态码是 200,但正文是需要执行 JS 的验证脚本,爬虫读不到任何内容 |
| 索引控制信号 | X-Robots-Tag 响应头、meta robots 标签、canonical 规范地址是否指向自己,这三项决定页面「抓到之后要不要收录」 |
| 页面基础质量 | title 长度、H1 数量、meta description 有无 —— 影响页面能不能被理解、能不能拿到点击 |
| 批量体检 | 一次最多 20 条地址,逐条检测并汇总成表格,适合发布前统一过一遍 |
很多人把这两个概念混在一起,导致排查方向完全跑偏。真实的链路是四道门,缺一道都进不了搜索结果:
| 结论 | 含义 | 典型成因 |
|---|---|---|
| 可抓取 · 可收录 | 一切正常,页面具备进入搜索结果的条件 | —— |
| 可抓取 · 不收录 | 爬虫会来读,但读完后按指示不放进索引 | noindex、canonical 指向他处 |
| 不可抓取 · 不收录 | 爬虫根本拿不到这个页面 | 被 robots.txt 禁止、HTTP 4xx / 5xx、人机校验页拦截 |
规则不是「有写就生效」,而是按一套明确的优先级来判。理解这三条,就能看懂工具给出的判定依据:
User-agent 分组。爬虫会先找与自己令牌匹配的分组,多个都匹配时取「最具体(最长)的 user-agent 值」;都没有匹配的,才退回到 User-agent: * 分组。Allow: /abc/ 和 Disallow: /abc/),Allow 赢。举个例子:
User-agent: * Disallow: /blog/ Allow: /blog/public/
访问 /blog/public/x 时两条规则都命中,/blog/public/(13 个字符)比 /blog/(6 个字符)更具体,所以 允许抓取;而访问 /blog/private/x 只有 Disallow: /blog/ 命中,禁止抓取。这就是「用 Allow 给 Disallow 开例外」的标准写法。
| 工具看到的 | 实际发生了什么 | 怎么办 |
|---|---|---|
| HTTP 403 | 服务器或安全插件直接拒绝了这次请求。如果连 Googlebot 都被拒,页面不可能被收录。 | 在 WAF / 安全插件的白名单里放行搜索引擎 UA 与官方 IP 段 |
| HTTP 5xx | 服务器端出错。持续 5xx 会让页面逐步从索引里掉出去。 | 查服务器错误日志;修复后用本工具复测 |
| HTTP 200 + 「人机校验页」 | 状态码看起来正常,但正文是需要执行 JavaScript 的验证页。爬虫不执行 JS,等于什么都没拿到。 | 在 CDN / WAF 的 Bot 管理里把该爬虫加入白名单 |
| 跳转次数过多 | HTTP→HTTPS、带 www→不带 www 互相跳,形成环。爬虫会放弃这次抓取。 | 把跳转规则理顺,只保留一跳 |
| robots.txt 里被 Disallow | 规则命中,爬虫主动不来抓。 | 加一条更具体的 Allow 放宽,或删掉这条 Disallow |
这是近几年最容易被忽略的一类问题。传统搜索引擎的爬虫往往被 CDN 的白名单主动放行,而 AI 爬虫(OAI-SearchBot、ChatGPT-User、PerplexityBot、ClaudeBot 等)经常被同一套「防爬虫」策略一起拦下。被拦后它们拿到的是人机校验页,不执行 JS 就永远读不到内容。
后果是:你精心准备的 llms.txt、结构化数据、清晰的内容结构,在 ChatGPT 搜索和 Perplexity 那边一个字都看不到 —— 整个 GEO(生成式引擎优化)工作在这一层就断了。
用本工具把爬虫切到 OAI-SearchBot 或 PerplexityBot 测一次,如果结论是「被安全校验页拦截」,就说明问题不在内容,而在 CDN / WAF 的 Bot 管理策略上。
它们不决定「能不能被抓取」,但决定「被抓取之后表现如何」。搜索引擎需要靠 title 和 H1 判断页面在讲什么,靠 description 决定搜索结果里显示哪段摘要。缺失或过长不会导致不收录,却会实打实地压低点击率。工具把它们放在优化建议一档,就是为了和「必须处理」的问题区分开。