Discussion Technical SEO AI Crawlers

我如何验证AI爬虫确实看到了我全部内容?有些页面似乎完全不可见

TE
TechLead_Amanda · 技术主管
· · 71 upvotes · 9 comments
TA
TechLead_Amanda
技术主管 · 2026年1月1日

关于我们AI可见性的困惑:

我们有500个页面,大约200个经常被AI引用。剩下300个完全不可见——即使是查询的最佳答案也从未被引用。

我已经检查过的:

  • robots.txt允许所有AI爬虫
  • 页面返回200状态
  • 没有noindex标签
  • 页面在sitemap中

我不确定的:

  • AI爬虫是否真的访问了所有页面?
  • 他们访问时实际看到什么怎么验证?
  • 是否有我遗漏的潜在阻碍?

我们网站有一半对AI不可见,一定有原因。帮我一起排查吧。

9 comments

9条评论

CE
CrawlerAccess_Expert 专家 技术SEO顾问 · 2026年1月1日

我来帮你系统排查下。

步骤1:日志分析

检查服务器日志中AI爬虫访问“不可见”页面的记录:

# 检查GPTBot是否访问了具体页面
grep "GPTBot" access.log | grep "/invisible-page-path/"

如果没访问:说明没发现这些页面。 如果访问了但没引用:是内容质量问题,不是访问问题。

步骤2:直接访问测试

测试爬虫访问页面时看到的内容:

curl -A "GPTBot" -s https://yoursite.com/page-path/ | head -200

检查:

  • 完整内容是否出现在HTML中
  • 没有跳转到登录/付费墙
  • 没有“检测到机器人”的提示
  • 关键内容不在JavaScript里

步骤3:渲染测试

AI爬虫的JS渲染能力不同。测试禁用JS时表现:

  • 用浏览器打开页面
  • 禁用JavaScript(开发者工具)
  • 主要内容还会显示吗?

如果内容没了,那就是JS渲染问题。

步骤4:速率限制检查

你对机器人有激进的速率限制吗? 检查WAF或CDN是不是X次请求后就屏蔽。 AI爬虫可能在抓取中途被拦截。

我最常见到的问题:

  1. 页面没有内部链接(孤立页面)
  2. 用JavaScript渲染内容
  3. 激进的机器人防护
  4. 页面未在sitemap里
TA
TechLead_Amanda OP · 2026年1月1日
Replying to CrawlerAccess_Expert
日志检查很有意思。我发现GPTBot会抓取可见页面,但几乎不访问那些不可见的页面。所以是发现问题,不是屏蔽问题吗?
CE
CrawlerAccess_Expert 专家 · 2026年1月1日
Replying to TechLead_Amanda

发现和屏蔽——是完全不同的问题。

如果GPTBot没访问某些页面,检查:

1. Sitemap覆盖 500个页面都在sitemap里吗?检查sitemap.xml。

2. 内部链接 不可见页面和网站其它部分的链接情况如何?

  • 首页有链接?导航栏有吗?
  • 还是要点很多层才能看到?

AI爬虫更优先爬取内部链接好的页面。孤立页面很少被抓取。

3. 抓取预算 AI爬虫有抓取限制。站点大时,可能不会爬全部页面。

  • 内部链接多的页面优先抓取
  • 层级很深的页面可能被跳过

4. 链接深度 从首页到不可见页面要点几次?

  • 1-2次:应该会被抓取
  • 4次以上:可能被降优先级

改进方法:

  • 确保sitemap包含所有页面
  • 重要页面增加指向不可见页面的内部链接
  • 建立主题集群页面链接相关内容
  • 尽量扁平化网站结构
IP
InternalLinking_Pro SEO架构师 · 2025年12月31日

如果有300个页面没被发现,内部链接很可能是你的问题。

审查你的内部链接结构:

Screaming Frog等工具可以显示:

  • 哪些页面内部链接最少
  • 孤立页面(0内部链接)
  • 从首页开始的点击深度

我常见的模式:

  1. 博客文章只从归档页链接 你的博客归档第15页才连到老文章,爬虫不会点那么深。

  2. 产品页只从分类列表链接 第8页才连到产品,太深了。

  3. 资源页没有交叉链接 内容很好但没人链接到它。

解决方案:

  1. 集群页 创建“资源”或“指南”类页面,链接相关内容。

  2. 相关推荐链接 每篇文章结尾连3-5篇关联文章。

  3. 面包屑导航 帮助爬虫理解层级并发现页面。

  4. 导航栏优化 能否把受欢迎的深层页面加到主导航或页脚?

内部链接不仅是SEO最佳实践,也是爬虫发现内容的关键。

JD
JSRendering_Dev · 2025年12月31日

我详细说说JavaScript渲染问题:

AI爬虫能处理什么:

爬虫JS渲染能力
GPTBot有限
PerplexityBot有限
ClaudeBot有限
Google-Extended有(通过Googlebot)

安全假设: 大多数AI爬虫看到的内容等于禁用JS时看到的。

常见JS问题:

  1. 客户端渲染内容 React/Vue/Angular应用只在浏览器渲染内容。 爬虫看到的是空容器。

  2. 无降级的懒加载 首屏以下内容和图片爬虫根本看不到。

  3. 交互组件隐藏内容 Tab、手风琴、轮播——非激活状态下的内容未写入初始HTML。

  4. JS注入结构化数据 通过JS添加的schema,爬虫可能读不到。

测试方式:

# 查看原始HTML(爬虫能看到什么)
curl -s https://yoursite.com/page/

# 和浏览器渲染HTML对比(开发者工具>查看源代码)

如果curl输出缺少关键内容,就是JS渲染问题。

解决方法:

  • 服务端渲染(SSR)
  • 静态内容预渲染
  • 懒加载加HTML降级
  • 关键内容写入初始HTML
C
CloudflareBotProtection · 2025年12月31日

机器人防护可能会悄悄拦截AI爬虫。

常见导致问题的机器人防护:

  1. Cloudflare Bot Fight Mode 可能挑战或拦截AI爬虫。 检查:安全 > 机器人 > Bot Fight Mode

  2. 速率限制 你如果限制每分钟的请求数,AI爬虫可能会被卡住。

  3. JavaScript挑战 如果对机器人出JS挑战,AI爬虫很可能无法通过。

  4. User Agent屏蔽 有些WAF会拦截未知或可疑User Agent。

如何验证:

  1. 检查CDN/WAF日志中AI User Agent的被拦截请求
  2. 查找被挑战的请求(显示验证码等页面)
  3. 用不同IP测试速率限制是否生效

针对AI爬虫的推荐设置:

大多数CDN/WAF支持按User Agent白名单:

  • 白名单GPTBot、ClaudeBot、PerplexityBot
  • 提高速率限制
  • 跳过JS挑战

你需要防恶意机器人,但不要拦AI爬虫索引你的内容。

SM
SitemapExpert_Maria · 2025年12月30日

为AI爬虫优化sitemap以提升发现率:

sitemap最佳实践:

  1. 包含所有重要页面 不仅仅是新内容,所有需被发现的页面。

  2. 更新频率信号<lastmod>显示内容更新时间。 近期更新更易被优先抓取。

  3. robots.txt中声明sitemap

Sitemap: https://yoursite.com/sitemap.xml

让所有爬虫都能找到它。

  1. 大小限制 sitemap超5万URL或50MB要拆分。 太大的sitemap可能无法完整处理。

验证方法:

# 检查sitemap可访问性
curl -I https://yoursite.com/sitemap.xml
# 应该返回200

# 统计sitemap中的页面数量
curl -s https://yoursite.com/sitemap.xml | grep -c "<url>"

如果你的不可见页面不在sitemap,请补充进去。

优先级提示:

可以用<priority>标签,但大多数爬虫忽略。更应依赖内部链接和内容新鲜度信号。

TA
TechLead_Amanda OP 技术主管 · 2025年12月29日

找到问题了!调试情况如下:

问题1:发现(主因)

  • 280个“不可见”页面内部链接很弱
  • 只从很深的归档页链接(点击深度5+)
  • 没在主sitemap(我们有多个sitemap,有些是孤立的)

问题2:机器人防护(次因)

  • Cloudflare Bot Fight Mode挑战了部分AI爬虫
  • 15%的爬虫请求收到JS挑战

问题3:JS内容(小问题)

  • 有12个页面内容在React组件内未做服务端渲染

已实施的解决措施:

  1. 内部链接大调整

    • 每篇文章加“相关推荐”
    • 建立集群页串联主题内容
    • 最大点击深度降到3
  2. sitemap合并

    • 所有sitemap合并为一个
    • 确认500个页面都包含
    • sitemap已写入robots.txt
  3. 机器人防护调整

    • 白名单GPTBot、ClaudeBot、PerplexityBot
    • 给AI User Agent降速率限制
  4. SSR上线

    • 相关页面启用服务端渲染

核心体会:

页面不是被屏蔽,而是没被发现。内部链接和sitemap覆盖对AI爬虫访问至关重要。

感谢大家的调试思路!

Have a Question About This Topic?

Get personalized help from our team. We'll respond within 24 hours.

Frequently Asked Questions

我如何检查AI爬虫是否能访问我的内容?
使用服务器日志检查GPTBot、ClaudeBot和PerplexityBot访问并返回200状态码。用带AI User-Agent头的curl测试爬虫能看到什么。检查robots.txt没有屏蔽AI爬虫。测试关键内容不是纯JavaScript渲染。
通常会有什么阻碍AI爬虫看到内容?
常见阻碍包括robots.txt禁止规则、仅用JavaScript渲染、登录墙或付费墙、过度的速率限制、屏蔽AI User-Agent的机器人检测、不适用于爬虫的懒加载、以及影响AI爬虫IP的地理屏蔽。
为什么AI爬虫会访问但不引用某些页面?
爬取不代表引用。页面可能被爬取但未被引用,原因包括内容过于薄弱或普通、结构不利于信息提取、内容缺乏权威信号、其他地方有更好来源,或内容过于商业化。可访问性是引用的必要但非充分条件。

监控AI爬虫访问

追踪哪些AI爬虫访问了您的网站,并确保您的内容对AI系统可见。

了解更多