首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么搜索引擎爬虫不运行javascript?

为什么搜索引擎爬虫不运行javascript?
EN

Stack Overflow用户
提问于 2013-10-10 05:05:55
回答 3查看 9.7K关注 0票数 17

我一直在使用一些高级的javascript应用程序使用大量ajax请求来呈现我的页面。为了使应用程序能够(由谷歌)爬行,我必须遵循https://developers.google.com/webmasters/ajax-crawling/?hl=fr。这告诉我们要做这样的事情:重新设计我们的链接,创建html快照,.使该网站可搜索。

我想知道为什么爬虫不运行javascript来获得呈现的页面和索引。这背后有什么原因?或者这是搜索引擎未来可能会出现的一个缺失的特性?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-10-10 05:17:30

尽管GoogleBot确实处理用js编写的站点。ajax站点的最大问题是,即使GoogleBot可以执行js并处理ajax请求。

web爬虫不可能知道页面何时完成加载。因此,web爬虫可以在开始执行ajax请求之前加载页面并对页面进行索引。假设脚本将在页面滚动中执行。谷歌机器人很可能不会触发所有可能的事件。

另一个问题是导航。

因为导航可以在不重新加载页面的情况下完成,所以一个url可以映射到多个“视图结果”。出于这个原因,google要求开发人员保留一个使用静态页面的页面副本,以支持那些否则无法访问的页面。他们将被编入索引。

如果您的站点可以通过一个完全合格的url访问每个页面。那么你应该没有问题索引你的网站。

也就是说,脚本将被运行。但不确定爬虫在处理完所有脚本后是否会对页面进行索引。

这里有一个链接:

GoogleBot智能:它是在2010年编写的,从那以后,我们可以预料到网络爬虫会变得更加聪明。

票数 4
EN

Stack Overflow用户

发布于 2013-10-10 05:15:02

读取纯比等待/调用javascript函数等更快的,然后通知如何设置页面。我认为这是主要原因。

另一个可能是整个爬行过程都是自动化的--所以,再一次,阅读静态页面要容易得多,而且更有意义。与javascript一样,页面的内容可能每秒钟更改一次,这使爬虫“困惑”。

考虑到,这还没有在搜索引擎中实现,我认为它不会在不久的将来出现。

票数 1
EN

Stack Overflow用户

发布于 2013-10-10 05:22:09

抓取器很难用脚本读取页面,因为这都是动态更改内容的问题。爬虫不仅关心第一次的网站访问,他们每周都会重新检查索引页面--两个在快速模式下,简单地比较一下内容和链接更改的“查找10个差异”。重新检查页面的脚本将是太痛苦和昂贵的爬虫在一个世界的网页。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19287476

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档