简析百度对JavaScript的理解能力与JS作弊

2013-03-07
  • 1088
  • 0

一直以来,广大站长和SEO从业者均认为搜索引擎不能够识别JavaScript,而百度搜索引擎优化指南2.0建议少用Javascript,这更坚定了广大从业者的观点。

然而,笔者从2011年年底便发现,百度对于一些大中型网站的JS文件进行了抓取并收录至数据库中,这一现象让笔者开始怀疑百度对JavaScript的识别能力并非像大家传言的那样。随着国内淘宝客网站的泛滥,Javascript的作弊方法渐渐引起了百度的重视,从2012年初夏开始,百度便一波又一波打击内容质量低,使用JS文件调用的淘宝产品的淘宝客网站。这一系列现象,不得不让笔者深信,百度对JS的识别能力已今非昔比。

最近,笔者拜读了百度搜索研发部官方博客中“JavaScript解析:让搜索引擎看到更真实的网页”一文,以下是文中对于JS代码特征的解读:

document.getElementById // 定位

document.getElementsByTagName // 定位

document.getElementsByClassName // 定位

node.[firstChild/nextSibling/previousSibling/parentNode] // 定位

document.[createElement/createTextNode] // 创建链接

node.[appendChild/insertBefore/innerHTML=?] // 写入内容

element.getAttribute, element.setAttribute // 设置属性

element.href = ? // 设置属性

该文发布于20127月,文中对于动态写入或调整链接标签、点击时触发事件改变默认的链接打开方式、动态页面内容、网页跳转和AJAX都有详细阐述,这说明百度搜索研发团队正在致力于让搜索识别JS这一工作上。 对于希望使用JavaScript的广大站长,百度研发团队在文末给予了3条建议:

1.  不要使用过于复杂的JavaScript技术,这不利于搜索引擎的收录

2.  不要阻止对.js文件的收录,否则会限制JavaScript解析的能力

3.  合理的划分站点的静态部分和动态部分

分析以上三点建议,并结合前文提到的百度大力打击JS作弊网站及收录JS文件等现象,可以推测:百度对JavaScript已具备一定的识别能力,针对简单的JS文件作弊网站实现了打击能力,但尚在摸索阶段,目前仍存在大量JS作弊网站。

几个月前百度公开表示严格遵守robots协议,广大站长如果不想百度分析网站的JS代码,或许可以屏蔽百度对JS文件的抓取,结合iframe进行使用、或者对JS文件进行加密,不过为了维护大家共同的良好互联网环境,请广大站长减少JS作弊行为。