搜索引擎原理搜索引擎,通常指的是收集了因特网上几千万到几十亿个网页并对网页中的每一个词(即关键词)进行索引,建立索引数据库的全文搜索引擎。
当用户查找某个关键词的时候,所有在页面内容中包含了该关键词的网页都将作为搜索结果被搜出来。
在经过复杂的算法进行排序后,这些结果将按照与搜索关键词的相关度高低,依次排列。
根据自己的优化程度,获得相应的名次。
1.原理概述在搜索引擎的后台,有一些用于搜集网页信息的程序。
所收集的信息一般是能表明网站内容(包括网页本身、网页的URL地址、构成网页的代码以及进出网页的连接)的关键词或者短语。
接着将这些信息的索引存放到数据库中。
搜索引擎的系统架构和运行方式吸收了信息检索系统设计中许多有价值的经验,也针对万维网数据和用户的特点进行了许多修改,如右图所示的搜索引擎系统架构。
其核心的文档处理和查询处理过程与传统信息检索系统的运行原理基本类似,但其所处理的数据对象即万维网数据的繁杂特性决定了搜索引擎系统必须进行系统结构的调整,以适应处理数据和用户查询的需要。
[1-2]2.工作原理爬行和抓取搜索引擎派出一个能够在网上发现新网页并抓文件的程序,这个程序通常称之为蜘蛛(Spider)。
搜索引擎从已知的数据库出发,就像正常用户的浏览器一样访问这些网页并抓取文件。
搜索引擎通过这些爬虫去爬互联网上的外链,从这个网站爬到另一个网站,去跟踪网页中的链接,访问更多的网页,这个过程就叫爬行。
这些新的网址会被存入数据库等待搜索。
所以跟踪网页链接是搜索引擎蜘蛛(Spider)发现新网址的最基本的方法,所以反向链接成为搜索引擎优化的最基本因素之一。
搜索引擎抓取的页面文件与用户浏览器得到的完全一样,抓取的文件存入数据库。
建立索引蜘蛛抓取的页面文件分解、分析,并以巨大表格的形式存入数据库,这个过程即是索引(index).在索引数据库中,网页文字内容,关键词出现的位置、字体、颜色、加粗、斜体等相关信息都有相应记录。
搜索词处理用户在搜索引擎界面输入关键词,单击“搜索”按钮后,搜索引擎程序即对搜索词进行处理,如中文特有的分词处理,去除停止词,判断是否需要启动整合搜索,判断是否有拼写错误或错别字等情况。
搜索词的处理必须十分快速。
排序对搜索词处理后,搜索引擎程序便开始工作,从索引数据库中找出所有包含搜索词的网页,并且根据排名算法计算出哪些网页应该排在前面,然后按照一定格式返回到“搜索”页面。
再好的搜索引擎也无法与人相比,这就是为什么网站要进行搜索引擎优化。
没有SEO的帮助,搜索引擎常常并不能正确的返回最相关、最权威、最有用的信息。
3.数据结构搜索引擎的核心数据结构为倒排文件(也称倒排索引),倒排索引是指用记录的非主属性值(也叫副键)来查找记录而组织的文件叫倒排文件,即次索引。
倒排文件中包括了所有副键值,并列出了与之有关的所有记录主键值,主要用于复杂查询。
与传统的SQL查询不同,在搜索引擎收集完数据的预处理阶段,搜索引擎往往需要一种高效的数据结构来对外提供检索服务。
而现行最有效的数据结构就是“倒排文件”。
倒排文件简单一点可以定义为“用文档的关键词作为索引,文档作为索引目标的一种结构(类似于普通书籍中,索引是关键词,书的页面是索引目标)。
4.全文搜索引擎在搜索引擎分类部分我们提到过全文搜索引擎从网站提取信息建立网页数据库的概念。
搜索引擎的自动信息搜集功能分两种。
一种是定期搜索,即每隔一段时间(比如Google一般是28天),搜索引擎主动派出“蜘蛛”程序,对一定IP地址范围内的互联网站进行检索,一旦发现新的网站,它会自动提取网站的信息和网址加入自己的数据库。
另一种是提交网站搜索,即网站拥有者主动向搜索引擎提交网址,它在一定时间内(2天到数月不等)定向向你的网站派出“蜘蛛”程序,扫描你的网站并将有关信息存入数据库,以备用户查询。
由于搜索引擎索引规则发生了很大变化,主动提交网址并不保证你的网站能进入搜索引擎数据库,因此目前最好的办法是多获得一些外部链接,让搜索引擎有更多机会找到你并自动将你的网站收录。
当用户以关键词查找信息时,搜索引擎会在数据库中进行搜寻,如果找到与用户要求内容相符的网站,便采用特殊的算法——通常根据网页中关键词的匹配程度,出现的位置/频次,链接质量等——计算出各网页的相关度及排名等级,然后根据关联度高低,按顺序将这些网页链接返回给用户。
5.目录索引与全文搜索引擎相比,目录索引有许多不同之处。
首先,搜索引擎属于自动网站检索,而目录索引则完全依赖手工操作。
用户提交网站后,目录编辑人员会亲自浏览你的网站,然后根据一套自定的评判标准甚至编辑人员的主观印象,决定是否接纳你的网站。
如果审核通过,你网页才会出现于搜索引擎中,否则不会显示。
其次,搜索引擎收录网站时,只要网站本身没有违反有关的规则,一般都能登录成功。
而目录索引对网站的要求则高得多,有时即使登录多次也不一定成功。
此外,在登录搜索引擎时,我们一般不用考虑网站的分类问题,而登录目录索引时则必须将网站放在一个最合适的目录。
最后,搜索引擎中各网站的有关信息都是从用户网页中自动提取的,所以用户的角度看,我们拥有更多的自主权;而目录索引则要求必须手工另外填写网站信息,而且还有各种各样的限制。
更有甚者,如果工作人员认为你提交网站的目录、网站信息不合适,他可以随时对其进行调整,当然事先是不会和你商量的。
目录索引,顾名思义就是将网站分门别类地存放在相应的目录中,因此用户在查询信息时,可选择关键词搜索,也可按分类目录逐层查找。
如以关键词搜索,返回的结果跟搜索引擎一样,也是根据信息关联程度排列网站,只不过其中人为因素要多一些。
如果按分层目录查找,某一目录中网站的排名则是由标题字母的先后顺序决定(也有例外)。
目前,搜索引擎与目录索引有相互融合渗透的趋势。
原来一些纯粹的全文搜索引擎现在也提供目录搜索。
6.元搜索引擎元搜索引擎(MetaSearchEngine)不是一种独立的搜索引擎,它最显著的特点是没有自己的资源索引数据库,是架构在许多其他搜索引擎之上的搜索引擎。
元搜索引擎在接受用户查询请求时,可以同时在其他多个搜索引擎中进行搜索,并将其他搜索引擎的检索结果经过处理后返回给用户。
元搜索引擎为用户提供一个统一的查询页面,通过自己的用户提问预处理子系统将用户提问转换成各个成员搜索引擎能识别的形式,提交给这些成员搜索引擎中,然后把各个成员搜索引擎的搜索结果按照自己的结果处理子系统进行比较分析,去除重复并且按照自定义的排序规则进行排序返回给用户。
所以,一般的元搜索引擎都包括三大功能结构:提问预处理子系统、检索接口代理子系统和检索结果处理子系统。
[3]目前国内的元搜索引擎·搜魅网(someta):集合了百度、google、搜狗、雅虎多家主流搜索引擎的结果,提供网页、资讯、网址导航等聚合查询。
另外,搜魅网突破了元搜索引擎没有自己的蜘蛛的瓶颈,提供了网站查询的功能。
·马虎聚搜:集合了google和百度的搜索结果,提供一些有用的热点排行。
·佐意综合搜索(chinazss):佐意网提供的综合搜索,结合了Google\Baidu\yahoo\等知名搜索引擎,更细分了不同的搜索类别,如软件搜索,游戏搜索,视频搜索,新闻搜索,网页搜索,地图搜索,音乐搜索,企业搜索等。
看似页面简单,却搜索功能却很强大。
佐意综合搜索可以说是元搜索中的一个典范。
该搜索引擎还可直接查询手机号码归属地,IP查询等。
·比比猫(bbmao):综合了百度,谷歌,搜狐,雅虎,搜狗等搜索引擎的搜索结果,并建立了自动分类,是目前最好的一款产品。
速度还可以。
元搜索引擎(META Search Engine)一般都没有自己网络机器人及数据库,它们的搜索结果是通过调用、控制和优化其它多个独立搜索引擎的搜索结果并以统一的格式在同一界面集中显示。
·115聚合搜索:一个基于聚类的个性化元搜索引擎,实现搜索定制聚合模块化,给用户良好的搜索体验;同时提供个性化网址导航服务,将信息聚合和网址导航结合在一起,通过新增插件的模块化功能组合,不断加入社会化服务的新元素,从而灵活方便地满足不同用户的个性需求,是一个全方位网罗的多元化和个性化的中文元搜索引擎。
·觅搜(MetaSoo):最近发现的一个使用了Ajax技术的中文元搜索引擎,可搜索谷歌、百度、雅虎一搜、搜狗、有道等。
用户可以自行设置各搜索引擎的可信度(权重),觅搜会根据各搜索引擎重复等情况计算得分,最高100分,然后按照得分排序。
这是Ajax技术在元搜索引擎中的第一次应用。
·抓虾网聚搜:就是将百度、Google两家算法各异的搜索巨头的搜索结果,去重,然后呈现到用户面前。
方便用户使用。
通过抓虾聚搜的搜索框,还可以方便的进行下列查询,例如:天气预报查询、手机归属地查询、网页计算器、ip地址查询、邮编区号查询、实时汇率转换、网站PR值、ALexa排名速查、网站快速预览、检索纠正功能、字典查询、诗词查询、成语词典、百家姓速查、快递单号查询等等。
致力快捷生活。
·万纬搜索:据说是最早的中文元搜索引擎,还有学术论文以其作代表论述元搜索引擎。
但现在貌似不可用了,速度慢且不说,搜索完成后,出来一句话:共查到N 条记录符合字符串X 本次取出1 - 0 条没有结果,怎么玩!·壹家搜:速度慢,动不动就宕掉了;标题都显示是“百度快照”。
·知合网的网页搜索:速度较慢,这个知合网的网页搜索,我记得以前是综合百度、Google搜索结果的,但现在跟百度的结果完全相同。
这样的话,有什么意义呢!·MMGOOGLE图片搜索:MMGOOGLE图片搜索提供专门的图片搜索.原来功能还比较强大,现在就是Google搜索结果的了.·我要搜搜你:首页上介绍说“综合了Baidu,Google,Yahoo的搜索结果”“结果比他们好一些”,但随意搜索几个词,很明显是比他们差很多。
搜“Google”,Baidu,Google,Yahoo排第一的都是Google的主站,而我要搜搜你排第一的是下载Google 桌面,这个结果仅仅在百度排第五,Google、Yahoo前十项中都没有;真不知它是什么算出来的。
·deyeb 社会化搜索引擎:上一篇文章《中文元搜索引擎(欢迎补充)》发表后,bookye说“最知名的deyeb社会化搜索,你怎么落下了呢”。
使用deyeb 后,发现仅仅热门词有结果,稍微冷一些的词,就无结果了。
搜“李宇春”,有97个结果;搜“何洁”,就只有一项指向百度贴吧_何洁吧。
更别说普通的词了,多数是无结果。
deyeb不能算是搜索引擎。
·北斗搜索:跟前面地比较,北斗是目前唯一能用的元搜索引擎,当然也是最好的了。