网站运营 
首页 > 网站运营 > 浏览文章

Google蜘蛛爬虫可以运行网页中的JS脚本和CSS样式

(编辑:jimmy 日期: 2024/11/5 浏览:3 次 )

旧观念

在我的既有观念中,搜索引擎的网页爬虫/蜘蛛/机器人(Crawler/Spider/Robot)只抓取页面的 HTML 代码,对于内部或外部的 JS 与 CSS 代码是一律无视的。所以我们也经常会说,Ajax 不利于搜索引擎的抓取,不利于 SEO。

因为在我们看来,搜索引擎爬虫毕竟不是功能强大的浏览器,它无法运行 JS,也无法渲染 CSS。那些五彩缤纷的页面,在爬虫眼中不过是纯粹的文本流(或包含了结构标记的文本信息流)而已。

然而,近期看到的两则关于 Google 的新闻,彻底颠覆了我对搜索引擎爬虫的认知。

新闻一

一段来自 Google 资深工程师 Matt Cutts 的视频震惊了我。Matt 告诫我们,不仅文本与背景同色、字体大小设置为 0、用 CSS 隐藏文字等等这些伎俩已经是小儿科了,而且 Google 现在还可以识别通过 JS 来隐藏文字的作弊方法。

在视频中,一段隐晦的 JS 代码将某元素的 .style.display 属性设置为 'none',试图隐藏那些只打算提供给搜索引擎、而不展示给用户的文字。Matt 表示,这种作弊方式现在已经瞒不了 Google 了。

新闻二

新闻二更加恐怖,据说 Google 可以抓取 Ajax 内容!该文表示,给 URL 的 hash 部分加上特定的标识符(即 domain.com/#abc 改为 domain.com/#!abc),会让 Googlebot 领悟到该 URL 是一个 Ajax 页面(而非页面中的锚点),并进行抓取。

你可能对 Google 的这一技术改进没多少兴趣,但你肯定注意到了问题的本质:Googlebot 可以抓取 Ajax 内容,也就是说,Googlebot 完全有能力运行页面中的 JS,而且功能完善!

爬虫与浏览器

如果这两则新闻都是真的,那么,从某种意义上说,爬虫的行为和能力已经与浏览器越来越接近了。这也意味着,搜索引擎爬虫将抓取更多的内容(包括 JS 和 CSS 文件),网站的流量负载将会加大。

另一方面,爬虫在抓取页面的过程中也将产生更多的资源消耗——毕意仅仅处理文本信息的资源开销要远远小于完整地渲染页面和运行客户端程序。

因此,我目前仍然对这两则新闻半信半疑。难道这是 Google 放出的烟幕弹?或者是好事者炮制的假新闻?如果 Googlebot 真的已经具备了运行 JS 或渲染 CSS 的能力,那么为了将资源开销控制在合理的范围内,或许 Google 会在内部启用黑/白名单机制?

站长们

如果担心爬虫对主机流量的侵蚀,或许可以考虑在 robots.txt 文件中禁止爬虫对 *.js*.css 文件的抓取。不过暂不确定这样做是否存在不良的副作用。

或许也有人会担心,正常的页面布局有时候也需要使用一些隐藏文字的手段,比如 【CSS 图代文】、【隐藏模块的 hx 标识信息】等等。这样会不会被 Google 判定为作弊呢?

我相信对于像 Google 这样“聪明”的搜索引擎来说,它即然有能力让爬虫运行 JS 和 CSS,它也必然有能力来判断什么是作弊、什么是正常的布局需要。所以我觉得站长们大可不必惊慌,平常该怎样就怎样,身正不怕影斜,规则总是用来约束那些“不法之徒”的。

所以,对于某些 SEOer 来说,这似乎是个坏消息。如果他们还在考虑是否还有新的作弊方案,那么我觉得意义不大。很显然,SEO 作弊手段的生存空间将越来越小,与此同时,网站自身内容的价值才是 SEO 的真实基础。

上一篇:网站被K的原因分析
下一篇:SEO 网站内部重复内容的处理步骤
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 SiteMap