AJAX会杀死你的抓取预算吗?

许多人都写过关于优化抓取预算的文章

这是一个好主意 - 让Google专注于您网站上正确的内容,并防止它不必要地抓取错误的内容(或以略微不同的方式抓取正确的内容1,000次)

那么,如果Google正在执行页面上的所有JavaScript并执行这些AJAX更新以获取完整内容,那么如何考虑抓取预算呢

可能需要考虑许多新问题,或者针对新文件类型需要考虑的旧问题

本文仅关注其中一个:JSON文件

AJAX调用通常会启动.json请求以获取将动态插入页面的数据

这意味着如果mypage.html包含mypage.json作为数据资源,您将开始查看Googlebot对Web日志中的.json文件的请求

根据您的JSON资源请求的形成方式,这也可能会产生大量重复的网址或您不一定希望Google访问的网址变体

例如,对mypage.html

a = foo的请求可能会导致请求mypage.json

a = foo

正如你可能不认为参数

a = foo提供的内容不同于

a = bar,对mypage.json

a = foo和

a = bar的请求可能会返回相同的内容

如果您使用JSONP(JSON的常见变体),则URL通常会为每个请求,回调和_添加两个参数

这可能会因用于启动.json请求的库而有所不同,但这些参数专门设计为每次使用时都具有唯一值;例如,您可以看到日期和时间嵌入到由jQuery库生成的此示例中的回调值中:

callback = jQuery214016598502290435135_1437264000022&_ = 1435968000000遗憾的是,并非所有上述爬网控制选项都可用于JSON文件

您可以在robots.txt中阻止* .json或特定.json路径,但如果您需要Google查看该JSON文件中包含的内容,则不希望阻止它

您不能将规范放入JSON文件中,也不能使用noindex标记

JSON文件用于数据

因此,在许多情况下,您必须依赖告诉Google忽略特定参数

我们已经完成的测试显示了两件有趣的事情:请告诉我,您在网站上看到的与Google执行JavaScript相关的其他问题是什么

本文中表达的观点是客座作者的观点,不一定是搜索引擎土地

工作人员作者列于此处

上一篇 :Google Search Console会将典型的网站管理员通知发送给更少的人
下一篇 Bing将加密默认搜索和推荐人数据今年夏天未提供