当前位置:文档之家› 小型搜索引擎的设计与实现

小型搜索引擎的设计与实现

摘要互联网上的信息每天都以指数量级的速度爆炸性增长,面对如此浩瀚的资源,搜索引擎为所有网上冲浪的用户提供了一个入口,所有的用户都可以从搜索引擎出发到达自己想去的网上任何一个地方。

因此它也成为除了电子邮件以外最多人使用的网上服务。

但是,随着信息多元化的增长,千篇一律的给所有用户提供同一个入口显然已经不能满足特定用户更深入的查询需求。

本文首先详细介绍了基于英特网的搜索引擎的系统结构,然后从网络机器人、索引引擎、Web服务器三个方面进行详细的说明。

这不仅对政府、企业、院校的发展极为不利,还在宏观上成为制约我国信息化建设健康良性发展的一大障碍。

搜索引擎不是单纯的技术问题。

在互联网时代,哪一个公司掌握了包括搜索引擎、信息传递在内的基础软件,它就能在竞争中傲视群雄;哪一个国家掌握和普及了这些技术,她就能在运用互联网的商业竞争占尽先机。

关键词:搜索引擎,网络机器人,优化策略,索引AbstractInformation on the Internet grows explosively every day. Search engine provides all the surfers on it with an entrance, from which they can reach every corner of the web. Therefore, search engine becomes the most popular network service second to email. With information continuing to explode in all directions, however, some specific kinds of users are not satisfied with only one entrance. This article fist introduces the system structure of search engine based on the internet in detail, then gives a minute explanation form Spider search, engine and web server.This not only is extremely disadvantageous to the development of the government, business enterprise, college, but also become to make on the macro view the roughly our country information turns a big obstacle of the positive development in health in developments.Searching for the engine is not a pure technique problem.Look down upon the group of heroes in Internet ages, which companies control include manhunt engine, information deliver foundation in inside software, it can in the competition;Which nations controled with made widely available these techniqueses, she can occupy at the business that make use of the Internet competition exhausted first timing.Key words: Search Engine,Robot,Optimize Strategies,Index目录摘要 (1)Abstract (2)第一章概述 (5)1.1引言 (5)1.2课题的基本内容 (6)1.2.1搜索引擎三段式工作流程: (6)1.3开发环境 (7)第二章搜索引擎的技术概要 (9)2.1搜索引擎简述 (9)2.2基于I NTERNET的搜索引擎的构成的 (10)2.2.1网络蜘蛛 (10)2.2.2索引 (10)2.2.3搜索引擎软件 (10)2.3搜索引擎的主要指标及其分析 (11)第三章网络机器人 (12)3.1什么是网络机器人 (12)3.2网络机器人的结构 (12)3.2.1网络机器人(SPIDER)的组成 (12)3.3HTML语言 (13)3.4网络机器人的实现及代码分析 (14)3.4.2结点的结构体 (15)3.5关于机器人礼节及ROBOT.TXT (21)3.5.1机器人礼节 (21)3.5.2 robot.txt (21)3.6特点和存在问题 (22)第四章搜索引擎优化策略 (24)4.1站点角度 (24)4.2用户角度 (26)第五章系统实现及结论 (27)5.2搜索引擎的完成情况 (27)5.3存在的问题 (27)5.4心得体会 (27)致谢 (27)参考文献 (28)第一章概述1.1引言随着计算机技术和互联网技术的飞速发展,人们越来越依靠网络来查找他们所需要的信息,但是,由于网上的信息源多不胜数,也就是我们经常所说的"Rich Data, Poor Information"。

所以如何有效的去发现我们所需要的信息,就成了一个很关键的问题。

为了解决这个问题,搜索引擎就随之诞生。

搜索引擎是仅次于门户的互联网的第二大核心技术,伴随着互联网的普及和网上信息的爆炸式的增长,它越来越引起人们的重视。

现在在网上的搜索引擎也已经有很多,比较著名的有Google,AltaVista, Yahoo, InfoSeek, Metacrawler, SavvySearch等等。

国内也建立了很多的搜索引擎,比如:搜狐、新浪、北极星、百度等等,当然由于它们建立的时间不长,在信息搜索的取全率和取准率上都有待于改进和提高。

例如:Alta Vista是一个速度很快的搜索引擎,由于它强大的硬件配置,使它能够做及其复杂的查询。

它主要是基于关键字进行查询,它漫游的领域有Web和 Usenet。

支持布尔查询的"AND","OR"和"NOT",同时还加上最相近定位"NEAR",允许通配符和"向后"搜索(比如:你可以查找链接到某一页的所有Web站点)。

你可以决定是否对搜索的短语加上权值,在文档的什么部位去查找它们。

能够进行短语查询而不是简单的单词查询的优点是很明显的,比如,我们想要查找一个短语"to be or not to be",如果只是把它们分解成单词的话,这些单词都是属于Stop Word,这样这个查询就不会有任何结果,但是把它当作一个整体来查询,就很容易返回一些结果,比如关于哈姆雷特或者是莎士比亚等等的信息。

系统对查询结果所得到的网页的打分是根据在网页中所包含的你的搜索短语的多少,它们在文档的什么位置以及搜索短语在文档内部之间的距离来决定的。

同时可以把得到的搜索结果翻译成其他的语言。

信息系统中的数据获取主要就是主要查找那些包含用户查询中的关键词文档。

由于用户查询常常不能准确地表达用户的信息需求。

实际上,用户更多的是希望获取于某个主题相关的信息,而非那些仅仅满足查询的数据。

如果不能很好的解决搜索问题,在收集信息、从事内容方面的花费的人力物力越大,其浪费就越大。

这不仅对政府、企业、院校的发展极为不利,还在宏观上成为制约我国信息化建设健康良性发展的一大障碍。

搜索引擎不是单纯的技术问题。

在互联网时代,哪一个公司掌握了包括搜索引擎、信息传递在内的基础软件,它就能在竞争中傲视群雄;哪一个国家掌握和普及了这些技术,她就能在运用互联网的商业竞争占尽先机。

1.2课题的基本内容本课题的主要是设计和实现一个小型的搜索引擎,通过大量的学习,实现搜索引擎的主要功能和完成全部的设计工作。

搜索引擎的基本原理是通过网络机器人定期在web网页上爬行,然后发现新的网页,把它们取回来放到本地,用户的查询请求可以通过查询本地的数据来得到。

如yahoo每天会找到大约500万个新的网页,google可以达到80亿网页以及10万台服务器共同工作。

搜索引擎的实现机制一般有两种:一种是通过手工方式对网页进行索引,比如yahoo的网页是通过手工分类的方式实现的,它的缺点是Web的覆盖率比较低,同时不能保证最新的信息。

查询匹配是通过用户写入的关键字和网页的描述和标题来进行匹配,而不是通过全文的匹配进行的。

第二种是对网页进行自动的索引,像 AltaVista则是完全通过自动索引实现的。

这种能实现自动的文档分类,实际上采用了信息提取的技术。

但是在分类准确性上可能不如手工分类。

1.2.1搜索引擎三段式工作流程:1.搜集:定期搜集,每次搜集替换上一次的内容,我们称之为“批量搜集”。

主要内容包括:文本内容的分析与提取、超文本连接的提取与解析、网络通信及信息获取。

搜索引擎一般都有一个Robot(或者称为Spider)定期的访问一些站点,来检查这些站点的变化,同时查找新的站点。

一般站点有一个robot.txt文件用来说明服务器不希望Robot访问的区域,Robot 都必须遵守这个规定。

如果是自动索引的话,Robot在得到页面以后,需要对该页面根据其内容进行索引,根据它的关键字的情况把它归到某一类中。

页面的信息是通过元数据的形式保存的,典型的元数据包括标题、IP地址、一个该页面的简要的介绍,关键字或者是索引短语、文件的大小和最后的更新的日期。

尽管元数据有一定的标准,但是很多站点都采用自己的模板。

文档提取机制和索引策略对Web搜索引擎的有效性有很大的关系。

2.整理:我们将对关键词进行提取,也就是把网页中的文本内容提取出来;由于在互联网上,网页的重复率平均大约为4,所以会对内容完全相同的页进行消除(我们将以改进的TWFormat 格式存储)。

主要内容是文本信息的存储与索引:互联网上大部分信息都是以HTML格式存在,对于索引来说,只处理文本信息。

因此需要把网页中文本内容提取出来,过滤掉一些脚本标示符和一些无用的广告信息,同时记录文本的版面格式信息。

存储在我们这里是在网页种文本内容提取和过滤掉脚本语言后,将其存为HTML格式和TXT格式,并且命名为Sitemap.htm和Sitemap.txt。

相关主题