(人工智能)基于Lucene与Heritrix的搜索引擎构建
摘 要
在互联网蓬勃发展的今天,互联网上的信息更是浩如烟海。人们在享受互联网带来的便利的同时,却面临着一个如何在如此海量的内容中准确、快捷地找到自己所需要的信息的问题,由此互联网搜索引擎应运而生。
本文在对搜索引擎的原理、组成、数据结构和工作流程等方面深入研究的基础上,对搜索引擎的三个核心部分即网络蜘蛛、网页索引和搜索的分析及实现过程进行阐述。网络蜘蛛部分采用了基于递归和归档机制的Heritrix网络爬虫;网页索引部分利用开源的Lucene引擎架构设计并实现了一个可复用的、可扩展的索引建立与管理子系统;搜索部分在Ajax技术支持上,设计并实现了一个灵活、简洁的用户接口。本系统具有抓取网页、建立和管理索引、建立日志以及搜索信息等功能,具备一定的应用前景。
[资料来源:Doc163.com]
关键词:搜索引擎;中文分词;索引
The Construction of Search Engine Based on Lucene and Heritrix [资料来源:www.doc163.com]
Abstract
The contents on the Web are increasing exponentially as the rapid development of the Internet. A problem how to obtain the useful information from vast contents quickly and accurately is facing us while people are enjoying the convenience of the Internet. The solver of this problem is Web Search Engine.
The analysis and implementation process of three basic components of search engine(Crawler, Indexer and Searcher) is described in this paper on the basis of further study on the principles, composition, data structure and work flow of search engine. The crawler component is implemented with Heritrix crawler based on the mechanism of recursion and archiving; A reusable, extensible index establishment and management subsystem are designed and implemented by open-source package named “Lucene” in the indexer component; The Searcher component based on the Ajax technology is designed and realized as a flexible, concise user interface. The system has some functions, such as crawling web page, establishment and management index, establishment log and search information, it has a certain application prospect. [资料来源:www.doc163.com]
Key Words:Search Engine;Chinese Word Segmentation;Index
目 录
摘 要 I
Abstract II
1 绪论 1
1.1 项目背景 1
1.2 国内外发展现状 1
2 系统的开发平台及相关技术 3
2.1 系统开发平台 3
2.2 系统开发技术 3
2.2.1 Heritrix网络爬虫简介 3
2.2.2 Lucene技术简介 4
2.2.3 Ajax技术简介 4
3 系统分析与设计 6
3.1 系统需求分析 6
3.1.1 系统架构分析 6
3.1.2 系统用例模型 6
3.1.3 系统领域模型 10
3.2 系统概要设计 11
3.3 系统详细设计 12
3.3.1 索引建立子系统 13
3.3.2 用户接口子系统 17
4 系统的实现 18
4.1 系统包框架的构建 18
4.1.1 索引建立子系统 18
4.1.2 用户接口子系统 19
4.2 系统主要功能实现 19
4.2.1 索引建立子系统 19
4.2.2 用户接口子系统 22
结 论 24 [资料来源:http://Doc163.com]
参 考 文 献 25
致 谢 26
1 绪论
1.1 项目背景
1994年左右,万维网(world wide web)出现了。它的开放性和其上信息广泛的可访问性极大的激励了人们创作的积极性。在短短的十几年间,人类至少在万维网上发布了40亿条的网页,并且现在每天都有数以万计的数量增长。由于网络上的资源与生俱来的数字化、网络化,这些特性成为了网络信息的双刃剑:一方面便于我们搜集整理,另一方面也会使我们感到太多蜂拥而至,无所适从。而搜索引擎的由来要追溯到1990年加拿大的麦吉尔大学,麦吉尔大学的师生为了在分散在FTP资源上找到所需的东西,他们开发了软件Archie。它通过定期搜索并分析FTP系统中存在的文件名信息,提供查找分布在各个FTP主机中文件的服务。当Web风靡全球之后,以Web网页为对象的搜索引擎检索系统产生了。成为人们上网找寻信息的重要手段,通过搜索引擎系统人们可以在浩如烟海的网络中瞬间找到想要找到的信息,并且搜索引擎的智能以及现在网页的特性使得人们只要输入相关的词语就可以找到直接相关的信息。
现今,Google的巨大成功让整个世界都把眼光投入到搜索引擎这个领域中。仿佛一夜间,各种各样的搜索服务席卷而来。从最初的Google、Yahoo到现今的Baidu、MSN、中搜、Sogou等,搜索引擎的品牌愈来愈多,服务也越来越丰富。同时,伴随着Web2.0的普及,网络信息的膨胀速度呈指数急速增长,各种各样的网站都需要为其加入检索功能,以满足用户的需要。另外,在企业级应用的市场上,全文信息检索的需求也一直在增加,各种文档处理、内容管理软件都需要键入全文检索的功能。 [资料来源:https://www.doc163.com]
在这种背景下,搜索引擎的技术迅速发展。各种讨论搜索的文章、杂志、论文铺天盖地,论坛和博客上也有许多相关帖子。一时间,搜索引擎技术成为最热门的技术之一。
1.2 国内外发展现状
网页是因特网的最主要的组成部份,也是人们获取网络信息的最主要的来源,为了方便人们在大量繁杂的网页中找寻自己需要的信息,这类检索工具发展的最快。一般认为,基于网页的信息检索工具主要有网页搜索引擎和网络分类目录两种。网页搜索引擎是通过“网络蜘蛛”等网页自动搜寻软件搜索到网页,然后自动给网页上的某些或全部字符做上索引,形成目标摘要格式文件以及网络可访问的数据库,供人们检索网络信息的检索工具。网络目录则是和搜索引擎完全不同,它不会将整个网络中每个网站的所有页面都放进去,而是由专业人员谨慎地选择网站的首页,将其放入相应的类目中。网络目录的信息量要比搜索引擎少得多,再加上不同的网络目录分类标准有些混乱,不便人们使用,因此虽然它标引质量比较高,利用它的人还是要比利用搜索引擎的人少的多。