网页css js 抓取助手(关于Google的新闻,彻底颠覆了我对搜索引擎的认知)

优采云 发布时间: 2021-11-05 18:01

  网页css js 抓取助手(关于Google的新闻,彻底颠覆了我对搜索引擎的认知)

  在我现有的概念中,搜索引擎网络爬虫/蜘蛛/机器人(Crawler/Spider/Robot)只抓取页面的HTML代码,而忽略内部或外部的JS和CSS代码。

  旧观念

  在我现有的概念中,搜索引擎网络爬虫/蜘蛛/机器人(Crawler/Spider/Robot)只抓取页面的HTML代码,而忽略内部或外部的JS和CSS代码。所以我们常说Ajax不利于搜索引擎的抓取,不利于SEO。

  因为在我们看来,搜索引擎爬虫毕竟不是强大的浏览器。它们不能运行 JS,也不能渲染 CSS。那些色彩斑斓的页面,在爬虫眼中,不过是纯粹的文本流(或者说是收录结构化标记的文本信息流)。

  不过最近关于谷歌的两条新闻,彻底颠覆了我对搜索引擎爬虫的认识。

  新闻一

  来自 Google 高级工程师 Matt Cutts 的一段视频震惊了我。马特警告我们,不仅文字和背景颜色,字体大小设置为0、 使用CSS隐藏文本等等。这些技巧已经是小儿科了,但谷歌现在可以识别通过JS隐藏文本的作弊方法.

  在视频中,一段晦涩的 JS 代码将元素的 .style.display 属性设置为“none”,试图隐藏仅针对搜索引擎而不向用户显示的文本。马特表示,这种作弊行为再也瞒不过谷歌了。

  新闻二

  新闻2更可怕。据说Google可以抓取Ajax内容!文章称,在 URL 的哈希部分添加特定标识符(即 /#abc 更改为 /#!abc)将使 Googlebot 意识到该 URL 是一个 Ajax 页面(而不是页面中的锚点),并进行爬网。

  你可能对谷歌的这项技术改进没有太大兴趣,但你一定已经注意到问题的本质:Googlebot 可以抓取 Ajax 内容,也就是说 Googlebot 完全有能力运行页面中的 JS,并且功能是完美的!

  爬虫和浏览器

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

  另一方面,爬虫在爬取页面的过程中也会消耗更多的资源——仅处理文本信息的资源成本远低于完全渲染页面并运行客户端程序的资源成本。

  所以,我对这两条消息还是持怀疑态度的。这是谷歌发布的*敏*感*词*吗?还是好人编造的假新闻?如果Googlebot真的有能力跑JS或者渲染CSS,那么为了将资源开销控制在一个合理的范围内,或许Google会在内部开启黑/白名单机制?

  网站管理员

  如果担心爬虫对主机流量的侵蚀,可以考虑禁止爬虫爬取robots.txt文件中的*.js和*.css文件。但是,我不确定这是否有任何不良副作用。

  可能也有人会担心,正常的页面布局有时候需要使用一些隐藏文字的手段,比如【CSS图文】、【隐藏模块的hx标识信息】等。这会被谷歌判断为作弊吗?

  我相信对于谷歌这样一个“智能”的搜索引擎,它能够让爬虫运行JS和CSS,但它也必须能够判断什么是作弊,什么是正常的布局需求。所以我不认为网站管理员需要恐慌。他们做他们通常做的事情。他们不怕影子。规则总是用来约束那些“不法之徒”。

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

  以上就是谷歌蜘蛛爬虫可以运行的网页中JS脚本和CSS样式的详细内容。更多详情请关注其他相关html中文网文章!

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线