关于博主
年龄非二八
也没啥文化
平生爱小说
还有看漫画
忙时做做事
闲时编编码
人生自逍遥
哪管它天塌!
也没啥文化
平生爱小说
还有看漫画
忙时做做事
闲时编编码
人生自逍遥
哪管它天塌!
友情链接
热门文章
搜索引擎开发(一)--概述
yuql 2009-12-22 19:42:06 发表于 PHP 分类
最近准备学习一下搜索引擎的相关知识,同时,想为自己的blog和友情站点做一个搜索引擎,只收录本blog和友情站点的内容。
说到搜索引擎,大家都知道有谷歌(Google)、百度(Baidu)、雅虎(Yahoo),以及为教育网、科研网提供搜索服务的天网搜索。
一、搜索引擎的工作原理
搜索引擎主要包含三个部分:网页搜集、网页预处理和查询服务。
1、网页搜集:就是我们常说的蜘蛛(spider)、爬虫。工作原理就是将网页集合看成一个有向图,搜索的过程是从给定的URL集合S开始,
沿着网页中的链接,按照深度优先或宽度优先等原则进行遍历,不停地从S中移除URL,下载相应的网页。并解析下载网页中的URL,检
查是否已经访问过,未访问过的URL加入集合S。
由于不可能搜索所的有网页,我们通常会设置搜集的层数,如2层。由于某些网页是动态生成,spider则无法搜集到的网页中的URL,因
此,为了方便搜索引擎的搜索,我们常常需要对网站做静态化处理。如使用apache的重写功能等。
如果你的网站不想被某些搜索到,则可能在网站的根目录放一个robot.txt,设置搜索引擎的访问权限。(至于具体robot.txt的书写规则,请
Google或Baidu之)。
2、网页预处理:由于搜集到的网页通常为HTML格式的,包含大量HTML标签,而对索引来说,只处理文本信息,因此,需要把网页中的
文本内容提取出来,建立索引。
网页内容提取主要包括4个方面:关键词的提取、重复或转载网页的消除、链接分析和网页的重要度计算。
3、查询服务:也就是根据用户输入的关键字,从索引库中找出相应信息,并进行组织显示到客户端的过程。



