给结构化数据加FAQPage后,AI抓取频次没涨,我怀疑是Schema嵌套层级的问题
上周在测试机上给一个产品详情页加了FAQPage结构化数据,想验证下AI抓取频次会不会跟着涨。结果蹲了五天,日志里GPTBot和ClaudeBot的命中次数基本没动,跟对照组持平。
先说下测试条件,避免大家踩一样的坑:
- 页面是同一套模板,A/B两组各40个URL,随机分流
- B组只加FAQPage,mainEntity里塞了8组问答
- A组保持原样,但两组的LCP都压在2.4s以内,排除速度变量
- 抓取日志按UTC+8锁口径,单次请求算一次命中,不按字节数加权
最初怀疑是FAQPage本身没被解析。我用Rich Results Test跑了一遍,能识别,没报错。又去查了日志里的Content-Type,确认返回的是application/ld+json,没被CDN改写成text/html。
真正让我起疑的是嵌套层级。我那个FAQPage是直接挂在<script>里作为顶层@type写的,但看了一些AI爬虫的文档,有些解析器会优先读@graph里的节点,或者要求FAQPage嵌套在WebPage的mainEntity下面。我拿三个不同层级的写法各做了10个页面:
- 顶层直接写FAQPage
- 嵌在WebPage的mainEntity里
- 用@graph把Organization、WebPage、FAQPage串起来
跑了三天,第3种写法的命中率比第1种高了约23%,但样本太小,标准差还没压下去。更麻烦的是,我翻日志发现同一个URL被重复抓取的间隔不稳定,有时候6小时一次,有时候两天一次,这个频次本身就有噪声,A/B的显著性很难判定。
还有个细节:FAQPage里的acceptedAnswer如果用了HTML标签,有些解析器会直接跳过整个节点。我最初在答案里加了<b>和<a>,后来全改成纯文本,解析成功率才上来。这个坑文档里基本没写。
现在的判断是:结构化数据完整率这个指标,得先定义清楚是按@type覆盖率算,还是按字段填充率算,否则拿它去对抓取频次就是两套口径硬套。我目前倾向用「有效节点数/预期节点数」,把HTML污染和嵌套错误都算作无效。
想问下各位:你们做Schema A/B的时候,抓取频次的观测窗口一般设多长?我这边三天的数据波动太大,不确定要不要拉到两周再下结论。
