« 1 »

[置顶] Silverlight 2.0正式版下周发布

[置顶] Silverlight 2 Beta2新功能体验

[置顶] Expression Blend 2.5 June Preview

[置顶] Microsoft Silverlight Tools Beta 2 for Visual Studio 2008

[置顶] Silverlight:Silverlight QQ群 欢迎大家

[置顶] 关于Silverlight里中文字无法显示的解決方案[整理]

[置顶] ScottGu的Silverlight2教程配套代码

[置顶] Silverlight 2.0 beta 1 及相关开发工具可以下载了!

搜索引擎蜘蛛把页面代码送回搜索引擎服务器后,SE是如何判断页面中最核心的内容呢?

先说下Kyw认为的搜索引擎运作过程的前几个步骤:
1. 蜘蛛下载A页面,送回服务器;
2. 服务器寻找A页面的核心内容位置,然后去除HTML代码;
3. 寻找网页核心内容;
……

我不确定GOOGLE、百度、YAHOO!是否真的有“判断核心内容”这个步骤,但我相信一定有类似的运算机制,因为如果没这个步骤,搜索引擎将耗费大量资源做重复运算。当然KYW不是搜索引擎工程师,下面只是对搜索引擎的一些思考。


SE面对一整页HTML代码,如何判断核心内容在哪里呢?
第一步:拿该页面和同域名、同目录、同文件名格式的页面做对比,去除相似的部分。经过这个步骤,头部的导航条、底部的版权信息、固定位置的广告就被去掉了。我估计搜索引擎在每增加一个新网站的时候,会建立一个对比模板来提高工作效率。如果网站经常改版,在改版刚开始的期间,搜索引擎还没反应过来,就可能造成新收录网页的排名不理想。

第二步:去掉有大量链接的部分。经过这步,“相关文章”“推荐文章”等都被去掉了,剩下一些包含文字内容的代码。

第三步:在剩余的代码中判断哪段标签(可能是DIV、TABLE、P或其它标签)中的文字内容最多,因为一般核心内容的文字量会比较多。

每个页面经过上面3个步骤,应该就能顺利的判断出核心内容所在的位置。经过这样的思考,我们也许可以这样总结:
1. 同目录下的页面,最好模板一样。
2. 核心内容文字量不能太少,特别是企业站和B2C网站,只放价格和包含大量说明文字的图片是很不好的。
3. HTML代码中如果错误很多,可能会影响排名,因为搜索引擎可能在判断核心内容的时候出差错。
4. 期待你的补充 ^_^

...
阅读全文 | 分类:搜索引擎技术 | 评论:0 | 引用:0 | 浏览:

Googlebot抓取网页的原理

[ 2008年3月11日 ]

 前几天我们报道了Google的Matt Cutts确认了AdSense的Mediabot的确是会帮助Googlebot抓取网页的消息,但有部分人不相信Matt Cutts,或者不相信他能代表Google官方。作为Matt Cutts的blog的一名忠实读者,我觉得完全没必要花费篇幅再去特别说明Matt Cutts的权威性。我想说的是,Matt Cutts在是Google品质管理部门的一名高级软件工程师,外界所知的是他负责研发阻止Spam与恶性控制排名的技术。因此,信不信当然由你。

  其实上次Matt所透露的仅仅是其中一方面的内容。今天,Matt再次写了一篇非常详细的文章,解释了Google的各种bot是怎样抓取网页的,以及Google最新的BigDaddy在抓取网页方面有什么新的变化等等,内容非常的精彩,所以和大家分享一下。

  首先要介绍的是Google的"crawl caching proxy"(爬行缓存代理)。Matt举了一个ISP与用户的例子来说明它。用户上网时,总是先通过ISP获取网页内容,然后ISP就会把用户访问过的网页缓存起来备用。比如说,当用户A访问了www.kenwong.cn,那么中国电信(或网通等)就会把"幻灭的麦克风"发送给用户A,然后将"幻灭的麦克风"缓存起来,当用户B在下一秒钟里再访问www.kenwong.cn,那么中国电信就会把缓存里的"幻灭的麦克风"发送给用户B,这样就能节省了带宽。

  正如本站之前所报道的那样,Google最新的软件层面的升级(转移至BigDaddy)已经接近完成,因此升级后的Google各方面的能力都将得到加强。这些加强包括了更智能化的googlebot爬行、改良的规范性以及更好的收录网页能力。而在Googlebot爬行抓取网页方面,Google也采取了节省带宽的方法。Googlebot也随着BigDaddy的升级而得到了升级。新的Googlebot已经正式支持了gzip编码,所以如果你的网站开启了gzip编码功能,那么就能节省Googlebot爬行你的网页时所占的带宽。

  除了改良的Googlebot外,升级后的Google将会采用上面所说到的crawl caching proxy来抓取网页,以进一步节省带宽。下面是一个示意图,显示了传统的Googlebot是怎样爬行一个网站的:



  从上图可见,以Googlebot爬行为主,Server A指的是AdSense,而Server N则可以是Google的blogsearch或其它。我们可以看出,同一个网站,Googlebot与AdSense的Mediabot、blogsearch的bot都爬行过了,其中有很多重复的爬行。上图抓取网页的总数一共是23次。我们来看一下升级后的Google所采用的crawl caching proxy又是怎样的情形:



  很明显,因为crawl caching proxy将各种bot的抓取都缓存起来,因此当Googlebot已经抓取过某些网页,而Mediabot或其它bot再次抓取重复的网页时,crawl caching proxy就会发挥作用,直接将缓存里的网页返回给Mediabot等,这样就使得实际爬行次数减少,节省了带宽。

  从Matt的分析可以看出,Google这样做的确是能节省自己及网站的带宽,好处是能让Google的各种bot在一定的时间里爬行更多的网页,以方便收录。我的理解是,虽然好处是相当明显,但坏处也是有的。比如,当一个网站它以AdSense的广告费为生,那么它就需要AdSense的Mediabot不停地光临,以分析它的更新网页的内容,投放更相关的广告。但当这个网站是一个PR值不错的网站,那么Googlebot很可能会天天都来爬行它,这样一来,crawl caching proxy就会把Googlebot的爬行缓存起来,等Mediabot再来爬行的时候,它就直接把缓存的内容返回给Mediabot。这样一来就减少了Mediabot爬行该网站的次数。由于两种bot并不是采用完全相同的工作机制,因此这个网站有可能因此Mediabot的爬行次数的减少而使得显示的AdSense广告的相关性减弱。因此,这种改进有可能带来一定的不公平。
 

...
阅读全文 | 分类:搜索引擎技术 | 评论:0 | 引用:0 | 浏览:
分页: « 1 »