一、了解爬行器或爬行蜘蛛
我们知道,之所以我们能够在百度、谷歌中很快地找到我们需要的信息,就是因为在百度和谷歌这样的搜索引擎中,已经预先为我们收录了大量的信息。不管是哪方面的信息,不管是很早以前的,还是最近更新的,都能够在搜索引擎中找到。
那么,既然搜索引擎需要预先收录这些大量的信息,那么它就必须到这个浩瀚的互联网世界是抓取这些信息。据报道,全球网民已经达到十几亿的规模了,那么这十几亿网民中,可想而知,每天能够产生多少信息?搜索引擎又有何能耐把这么多的信息收录在自己的信息库中?它又如何做到以最快的速度取得这些信息的呢?
首先,了解什么是爬行器(crawler),或叫爬行蜘蛛(spider)。称谓很多,但指的都是同一种东西,都是描述搜索引擎派出的蜘蛛机器人在互联网上探测新信息。而各个搜索引擎对自己的爬行器都有不同的称谓:百度的叫Baiduspider;Google的叫Googlebot,MSN的叫MSNbot,Yahoo则称为Slurp。这些爬行器其实是用计算机语言编制的程序,用以在互联网中不分昼夜的访问各个网站,将访问的每个网页信息以最快的速度带回自己的大本营。
二、搜索引擎每次能带回多少信息
要想这些爬行蜘蛛每次能够最大最多的带回信息,仅仅依靠一个爬行蜘蛛在互联网上不停的抓取网页肯定是不够的。所以,搜索引擎通过都会派出很多个爬行蜘蛛,让它们通过浏览器上安装的搜索工具栏,或网站主从搜索引擎提交页面提交而来的网站为入口开始爬行,爬行到各个网页,然后通过每个网页的超级链接进入下一个页面,这样不断的继续下去……
搜索引擎并不会将整个网页的信息全部都取回来,有些网页信息量很大,搜索引擎都只会取得每个网页最有价值的信息,一般如:标题、描述、关键词等。所以,通过只会取得一个页面的头部信息,而且也只会跟着少量的链接走。百度大概一次最多能抓走120KB的信息,谷歌大约能带走100KB左右的信息,因此,如果想你的网站大部分网页信息都被搜索引擎带走的话,那么就不要把网页设计得太长,内容太多。这样,对于搜索引擎来说,既能够快速阅读,又能够带走所有信息。
三、蜘蛛们是如何爬行的?
所有的蜘蛛的工作原理都是首先从网络中抓取各种信息回来,放置于数据仓库里。为什么称为数据仓库?因为此时的数据是杂乱无章的,还是胡乱的堆放在一起的。因此,此时的信息也是不会出现在搜索结果中的,这就是为什么有些网页明明有蜘蛛来访问过,但是在网页中还不能找到结果的原因。
搜索引擎将从网络中抓取回来的所有资料,然后通过关键字描述等相关信息进行分门别类整理,压缩后,再编类到索引里,还有一部分抓取回来经过分析发现无效的信息则会被丢弃。只有经过编辑在索引下的信息,才能够在搜索结果中出现。最后,搜索引擎则经过用户敲击进的关键字进行分析,为用户找出最为接近的结果,再通过关联度由近及远排列下来,呈现在最终用户眼前。