标点符(钱魏 Way)

搜索引擎蜘蛛抓取页面的原理

搜索引擎蜘蛛(Spider),又叫机器人(robots),每个主流的搜索引擎都有自己的搜索引擎蜘蛛,如:Googlebot(Google蜘蛛)、baiduspider(百度蜘蛛)、Yahoo Slurp(Yahoo蜘蛛)、Msnbot(必应蜘蛛)。蜘蛛(Web spider)是指“自动化浏览网络”的程序,用来抓取网页的一个程序。

抓取网页的时候,蜘蛛一般有两种策略:广度优先和深度优先。

广度优先指蜘蛛会先抓取起始网页中链接的所有网页,然后再选择其中的一个链接网页,继续抓取在此网页中链接的所有网页。这是最常用的方式,因为这个方法可以让网络蜘蛛并行处理,提高其抓取速度。

深度优先就是让蜘蛛从起始页开始尽量的在抓取网页时往网页更深层次的挖掘进去指蜘蛛,一个链接一个链接跟踪下去,处理完这条线路之后再转入下一个起始页,继续跟踪链接。这个方法有个优点是网络蜘蛛在设计的时候比较容易。但效率会很低,而且容易迷路。

目前大多数搜索引擎使用的是广度优先法则。

zhizhu

广度优先:A-B,C,D,E,F-H,G-I

深度优先:A-B,A-C,A-D,A-E-H-I,A-F-G

由于不可能抓取所有的网页,蜘蛛对一般网站都设置了访问的层数。如上图,A为起始网页,属于0层,B、C、D、E、F属于第1层,G、H属于第2层,I属于第3层。如果网络蜘蛛设置的访问层数为2的话,网页I是不会被访问到的。所以说扁平化的网站结构设计更有助于搜索引擎抓取其更多的网页。

码字很辛苦,转载请注明来自标点符《搜索引擎蜘蛛抓取页面的原理》

评论