如何通知爬虫已完全加载ajax驱动的页面并准备好拍摄快照

时间:2016-07-22 11:20:50

标签: angularjs ajax bots google-crawlers web-search

有Angular / REST支持的网页,但没有使用导航模块(没有基于散列的(#!)导航)。 尽管弃用了google的ajax-crawling webmasters-ajax-crawling,但似乎爬虫只看到JS生成的内容不依赖于AJAX(REST)调用响应,并且看不到页面内容依赖于AJAX调用响应。

感觉谷歌没有足够的时间来呈现页面,因为它无法识别JS中所有预期的逻辑是否已完全完成..

问:有没有办法告诉谷歌(以及一般的抽象浏览器)该页面完全呈现并且没有待处理的AJAX调用? 可能有人可以建议如何避免角度渲染页面 - 直到所有AJAX调用都完成(可能是定制的ng-cloak)?

1 个答案:

答案 0 :(得分:0)

回答我自己的问题..

  • 之所以被问到是因为:谷歌似乎无法索引文字 在执行AJAX调用之后,由angular呈现的页面。

  • 现在:我看到Google抓取工具实际上对所有内容进行索引,所以 - 不 需要通知爬虫该页面已呈现 - 它可以识别这一点 通过它自己。

  • 但是:我认为google将页面分为两个阶段:1。快速索引页面的HTML,不涉及JS渲染(仅在获取主文档之后); 2.使用JS执行渲染页面的繁重操作并索引所有渲染内容。第二步可能会在第一步后几天发生,这就是为什么你可能暂时看不到索引内容的原因..