蜘蛛搜索引擎是什么,蜘蛛搜索引擎的基本原理及工作流程
搜索引擎用来爬行和访问页面的程序被称为蜘蛛(spider),也叫机器人(bot)。搜索引擎蜘蛛访问网站页面时类似于普通用户使用浏览器,蜘蛛程序发出页面访问请求后,服务器返回HTML代码,蜘蛛程序把收到的代码存入原始页面数据库,搜索引擎为了提高爬行和抓取的速度,都使用多个蜘蛛分布爬行。
蜘蛛访问网站时,首先会访问网站根目录下的robots.txt文件,如果robots.txt文件禁止搜索引擎抓取某些网页或者内容,再或者网站,蜘蛛将遵循协议,不对其进行抓取(具体可查看马海祥博客《robots协议文件的写法及语法属性解释》的相关介绍)。
蜘蛛也是有自己的代理名称的,在站长日志中可以看出蜘蛛爬行的痕迹,这也就是为什么这么多站长解答问题的时候,都会说先查看网站日志(作为一个出色的SEO你必须具备不借助任何软件查看网站日志的能力,并且要非常熟悉其代码的意思)。
一、搜索引擎蜘蛛的基本原理
搜索引擎蜘蛛即Spider,是一个很形象的名字,把互联网比喻成一个蜘蛛网,那么Spider就是在网上爬来爬去的蜘蛛。
网络蜘蛛是通过网页的链接地址来寻找网页,从网站某一个页面(通常是首页)开始,读取网页的内容,找到在网页中的其它链接地址,然后通过这些链接地址寻找下一个网页,这样一直循环下去,直到把这个网站所有的网页都抓取完为止。
如果把整个互联网当成一个网站,那么网络蜘蛛就可以用这个原理把互联网上所有的网页都抓取下来。
对于搜索引擎来说,要抓取互联网上所有的网页几乎是不可能的,从目前公布的数据来看,容量最大的搜索引擎也不过是抓取了整个网页数量的百分之四十左右。
这其中的原因一方面是抓取技术的瓶颈,100亿网页的容量是100×2000G字节,即使能够存储,下载也存在问题(按照一台机器每秒下载20K计算,需要340台机器不停的下载一年时间,才能把所有网页下载完毕),同时,由于数据量太大,在提供搜索时也会有效率方面的影响。
因此,许多搜索引擎的网络蜘蛛只是抓取那些重要的网页(每个搜索引擎的蜘蛛抓取的原则也都不同,具体可对照一下马海祥博客的《解读IIS日志中搜索引擎蜘蛛名称代码及爬寻返回代码》相关介绍来查询一下你的网站日志),而在抓取的时候评价重要性主要的依据是某个网页的链接深度。
由于不可能抓取所有的网页,有些网络蜘蛛对一些不太重要的网站,设置了访问的层数,例如,下图中所示:

A为起始网页,属于0层,B、C、D、E、F属于第1 层,G、H属于第2层,I属于第3层,如果网络蜘蛛设置的访问层数为2的话,网页I是不会被访问到的,这也让有些网站上一部分网页能够在搜索引擎上搜索到,另外一部分不能被搜索到。
对于网站设计者来说,扁平化的网站结构设计有助于搜索引擎抓取其更多的网页。
网络蜘蛛在访问网站网页的时候,经常会遇到加密数据和网页权限的问题,有些网页是需要会员权限才能访问。
当然,网站的所有者可以通过协议让网络蜘蛛不去抓取,但对于一些出售报告的网站,他们希望搜索引擎能搜索到他们的报告,但又不能完全免费的让搜索者查看,这样就需要给网络蜘蛛提供相应的用户名和密码。
网络蜘蛛可以通过所给的权限对这些网页进行网页抓取,从而提供搜索,而当搜索者点击查看该网页的时候,同样需要搜索者提供相应的权限验证。
二、追踪链接
由于搜索引擎蜘蛛为了能够抓取网上尽量多的页面,它会追踪网页上的链接,从一个页面爬到下一个页面,就好像是蜘蛛在蜘蛛网上爬行那样,这就是搜索引擎蜘蛛这个名称的来因。
整个互联网网站都是相互链接组成的,也就是说,搜索引擎蜘蛛从任何一个页面出发最终都会爬完所有页面。

当然网站和页面链接结构太过于复杂,所以蜘蛛只有采用一定的方法才能够爬完所有页面,据马海祥了解最简单的爬行策略有3种:
1、最佳优先
本文地址:百科问答频道 https://www.neebe.cn/wenda/942090.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!