基于JAVA的搜索引擎设计与实现本科.doc
《基于JAVA的搜索引擎设计与实现本科.doc》由会员分享,可在线阅读,更多相关《基于JAVA的搜索引擎设计与实现本科.doc(22页珍藏版)》请在沃文网上搜索。
1、山东财经大学学士学位论文基于JAVA的搜索引擎设计与实现摘 要网络中资源丰富,但是互联网上海量的信息,任何一个人都不能全部浏览,为了获取我们需要的信息,由此就产生了搜索引擎。而如今搜索引擎无法满足增长着的网页数量,搜索引擎技术已经成为计算机界积极研究和开发的对象,网络爬虫是搜索引擎的基础,是最底层的技术。所以研究网络爬虫的实现技术并研究其应用十分重要。论文详细说明了如何用java语言实现一个简易搜索引擎,同时描述了搜索引擎的原理,系统功能,简要介绍了系统开发的背景,开发环境,系统的需求分析,以及功能的设计与实现。关键词:搜索引擎;网络爬虫;搜索策略Design and Implementati
2、on of Search Engine Based on JAVAABSTRACTThe resources on the internet are abundant, but any one of us cant browse the great quantity information on the Internet, so the search engine appeared to obtain the information which we need. However, search engines can not meet the growth in the number of p
3、ages nowadays. Search engine technology has become the object of active research and development of computer industry. Web crawler is the foundation of all and this is the underlying technology. So it is very important to develop the Web crawler technology, also it is very important to study the app
4、lication of the Web crawler technology. This paper details how to implement a simple search engine with java language, describes the principle of the search engine, system functions, and briefly introduces the background of the system development, development environment, requirements analysis, and
5、functional designation and implementation. Keywords:Search engine; Web spider; Search strategy目 录一、引言1二、搜索引擎1(一)搜索引擎的工作原理1(二)搜索引擎的分类1(三)搜索引擎技术发展2三、网络爬虫知识储备2(一)深入学习URL3(二)指定URL获取网页3(三)爬虫策略41、宽度优先搜索42、深度优先搜索5(四)爬取链接5四、相关技术6(一)WEB访问过程6(二)JAVA技术7(三)网络编程8(四)HTML知识8五、需求分析8(一)同步环境8(二)功能需求9(三)性能需求9(四)输入输出要求
6、9(五)运行需求9六、概要设计9(一)可行性论述9(二)系统设计方案9(三)各功能划分10(四)主要存储结构10七、详细设计10(二)获取网页实现13(三)解析HTML实现13(四)ROBOTS文件18(五)信息输出19八、结束语20参考文献20致谢20一、引言自从WWW于1991年诞生以来,已经发展成为拥有超过亿位用户和约400万站点、几十亿页面的巨大信息空间,而且其信息容量仍在以指数形式飞速增长。WWW是以超文本的形式呈现给用户的,包含了从技术资料、商业信息到新闻报道、娱乐信息等多种类别和形式的信息。超文本标识语言以其简单精练的语法、极易掌握的通用性与易学性,使WEB网页可以亲近于每一个普
7、通人,互联网也才得以普及发展以至今日的辉煌。然而,电子商务、电子图书、远程教育等全新领域如异军突起,迅猛发展并逐渐成为互联网世界必不可少且愈发重要的组成部分,随之而来的是WEB文件的复杂化、多样化、智能化,于是高容量、高信息量、高效率便成为网络信息传输技术发展的追求。与此同时还有另一种需求变得愈发广泛而迫切,那便是如何得到用户感兴趣的信息。由于Internet是一个具有开放性、动态性和异构性的全球分布式网络,资源分布很分散,且没有统一的管理和结构,这就导致了信息获取的困难。如何快速、准确地从浩瀚的信息资源中寻找到所需信息己经成为困扰网络用户的一大难题,这也就是所谓的Rich Data Poor
8、 Information 问题。于是搜索引擎便随之产生,像mp3搜索、视频搜索、图片搜索正是搜索的初步雏形。根据用户的搜索意图,直接返回相关信息。对搜索引擎技术的研究,国外比中国要早近十年,从最早的Archie,到后来的Excite、ahvista、overture、google等搜索引擎问世。虽然在国外搜索引擎技术早就开始研究,但在国内还是陆续涌现出优秀的搜索引擎,像百度、中搜等。随着搜索引擎技术的成熟,它将成为获取信息、掌握知识的利器。但是现有的搜索引擎对于用户所提出的查询要求仅限于关键词的简单逻辑组合,搜索结果重视的是返回的数量而不是质量,在结果文档的组织和分类上也有所欠缺因此,如何提高
9、搜索引擎的智能化程度,如何按照知识应用的需要来组织信息,使互联网不仅提供信息服务,而且能为用户提供知识服务,将成为计算机工业界和学术界有待研究的方向。而网络爬虫是这一切的基础,是最底层的技术。所以解决这一问题就需要我们研究网络爬虫的实现技术并研究其应用。二、搜索引擎(一)搜索引擎的工作原理搜索引擎的原理,可以看作三步:从互联网上抓取网页,建立索引数据库,在索引数据库中搜索。搜索引擎利用能够从互联网上自动收集网页的爬虫程序,自动访问互联网,并沿着网页中的所有URL爬到其它网页,重复这过程,并把爬过的所有网页收集回来。然后建立索引数据库,由分析索引程序对收集回来的网页进行分析,提取相关网页信息(包
10、括网页所在URL、编码类型、页面内容包含的关键词、关键词位置、生成时间、大小、与其它网页的链接关系等),然后用这些相关信息建立网页索引数据库。接下来在索引数据库中搜索排序,当用户输入关键词搜索后,由搜索系统程序从网页索引数据库中找到符合该关键词的所有相关网页。最后,由页面生成系统将搜索结果的链接地址和页面内容摘要等内容组织起来返回给用户。(二)搜索引擎的分类获得网站网页资料,能够建立数据库并提供查询的系统,都可以把它叫做搜索引擎。真正意义上的搜索引擎,通常指的是收集了因特网上几千万到几十亿个网页并对网页中的每一个词(即关键词)进行索引,建立索引数据库的全文搜索引擎。当用户查找某个关键词的时候,
11、所有在页面内容中包含了该关键词的网页都将作为搜索结果被搜出来。在经过复杂的算法进行排序后,这些结果将按照与搜索关键词的相关度排列。按照工作原理的不同,可以把它们分为两个基本类别:全文搜索和分类目录。全文搜索引擎通过从互联网上提取的各个网站的信息(以网页文字为主)而建立的数据库中,检索与用户查询条件匹配的相关记录,然后按一定的排列顺序将结果返回给用户。从搜索来源的角度,全文搜索引擎又可细分为两种,一种是拥有自己的检索程序,即爬虫程序,并自建网页数据库,搜索结果直接从自身的数据库中调用;另一种则是租用其他引擎的数据库,并按自定的格式排列搜索结果。分类目录则是通过人工的方式收集整理网站资料形成数据库
12、的,比如雅虎中国以及国内的搜狐、新浪、网易分类目录。另外,在网上的一些导航站点,也可以归属为原始的分类目录。(三)搜索引擎技术发展长期以来,人们只是通过传统的媒体(如电视、报纸、杂志和广播等)获得信息。但随着计算机网络的发展,人们想要获取信息,已不再满足于传统媒体那种单方面传输和获取的方式,而希望有一种主观的选择性。现在,网络上提供各种类别的数据库系统,如文献期刊、产业信息、气象信息、论文检索等等。由于计算机网络的发展,信息的获取变得非常及时、迅速和便捷。到了1993年,WWW的技术有了突破性的进展,它解决了远程信息服务中的文字显示、数据连接以及图像传递的问题,使得WWW成为Internet上
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 JAVA 搜索引擎 设计 实现 本科