垂直搜索引擎设计及其效率问题的研究(附件)【字数:10279】

摘 要如今,互联网上的Web信息如爆炸般产生,信息的生产能力已经超过了人们对其处理和吸收的能力,成千上万的信息涌入互联网,人们不得不自主挑选有用的信息,排除那些没用的信息。这就给垂直搜索引擎带来了生机。垂直搜索引擎作为搜索引擎的分支和延伸,有主题相关度高,检索范围窄而深的特点,将会成为传统搜索引擎的突破口。本文分析了搜索引擎在现今网络世界的影响和其未来发展的趋势,对搜索引擎工作原理、分类以及垂直搜索引擎的特点进行研究。通过对Http无状态无连接访问服务器以及两种报文格式解读;对检索工具库Lucene的索引组件和搜索组件进行了分析;在Jsoup中运用conncet方法,发起Http请求,从URL或者字符串中解析HTML;分析爬虫模块、网页去重、存储模块;利用Lucene在自己创建的文件中建立索引并成功索引到文档;最后利用Heritrix在新闻网页上实现应用验证了改进的效果。接受查询用户在搜索引擎上输入自己需要查找的关键词,搜索引擎收到关键词之后,根据这个关键词在自己的索引库里查找相关内容,并按一定的顺序返回给用户。一般搜索引擎在建立索引的时候对相关内容用特殊的算法提取,返回的内容为原内容连接和,这是为了有效的利用有限的存储空间,当然搜索引擎会对有些重要网站保存原内容,简称快照。搜索引擎每时每刻都在处理海量的请求,所以搜索引擎需要有良好的负载均衡解决方案[4]。
目 录
第一章 绪论 1
1.1研究背景 1
1.2研究目的与意义 1
1.3研究内容 1
1.3论文组织结构 1
第二章 垂直搜索引擎简介及技术分析 3
2.1搜索引擎工作原理 3
2.2垂直搜索引擎特点 3
2.3 Http Client 4
2.4 Lucene 4
2.5 Jsoup 5
第三章 垂直搜索引擎效率问题的研究 7
3.1爬虫模块 7
3.2网页去重模块 8
3.3存储模块 9
第四章 Heritrix在新闻网页中的实现 10
4.1工作流程 10
4.2配置Heritrix爬虫框架,爬取网页 11
4.3 Ht *好棒文|www.hbsrm.com +Q: #351916072# 
mlParser网页信息提取 14
第五章 Lucene在网站上的实现 17
5.1工作流程 17
5.2配置 17
5.3建立索引,文档索引 18
结束语 22
致 谢 23
参考文献 24
第一章 绪论
1.1研究背景
21世界Internet飞速发展,通用搜索引擎的出现,整合了大量的网站信息,发挥信息导航的作用,将大量的信息集成导航,快速查询,供所有信息平台上的互联网用户来使用,这使得社交APP从单一沟通交友平台向新闻传播平台发展[1]。然而,随着互联网的发展,大量的垃圾信息涌入互联网。对于一些专业领域的人员来说,要搜索特定的信息,需要自己筛选杂乱、重复的信息,过程相当复杂。所以,垂直搜索引擎就出现了。 垂直搜索引擎的概念是为特定领域,特定人群或特定需求提供的相关信息和相关服务。 它可以简单地称为搜索引擎领域的分工。 垂直搜索引擎在网页中仔细选择网页的一部分,将这些页面的链接地址作为种子URL,将种子URL放入URL队列中,然后使用URL队列中的网络爬虫来读取它 ,并通过DNS解析URL以将链接地址转换为与Web服务器相对应的IP站点。垂直搜索引擎还能去重复,去杂乱的为客户提供精确度非常高的信息。理论上,爬虫可以抓取互联网上的所有内容[3]。在信息化时代的今天,该课题的研究具有非常重要的现实意义[2]。
1.2研究目的与意义
1.3研究内容
本文的研究内容是对垂直搜索引擎概念原理和技术进行研究,包括Lucene的索引组件Index Writer、Directory、Analyzer、Document以及搜索组件Index Searcher,Term,Query;Http Client与网页间访问的请求与返回并;Jsoup解析网页;垂直搜索引擎中爬虫模块、网页去重模块、存储模块;且在新闻网页上运用Heritrix进行网页内容的抓取;运用Lucene在创建的文档上建立索引及索引文档。
1.3论文组织结构
本论文的组织结构如下:
第一章绪论,主要介绍垂直搜索引擎的研究背景、研究目的与意义、研究内容以及论文的组织。
第二章是垂直搜索引擎简介及技术分析,主要介绍垂直搜索引擎的工作原理、特点,以及对其运用到的技术Http Client、Lucene、Jsoup的分析。
第三章有关对垂直搜索引擎效率问题的研究主要介绍几个模块,包括爬虫模块、网页去重模块、存储模块。
第四章是Heritrix在新闻网页中的实现。首先介绍其工作流程,然后我们用Eclips配置爬虫框架,爬取网页,再对网页进行爬取。最后对文本去重、建立索引进行分析。
第五章是利用Lucene在自己创建的文档上建立索引,并用Index来检索TXT文档。
最后对论文进行总结。 第二章 垂直搜索引擎简介及技术分析
2.1搜索引擎工作原理
搜索引擎工作原理主要包括两个过程:搜集整理信息和接受查询。
搜集整理信息:建立索引的过程便是整理信息。搜集信息过程中抓取的数据会被搜索引擎存储到文件系统或数据库,理论上,爬虫可以抓取互联网上的所有内容[3]。搜索引擎需要这类数据建立倒排索引表等,整理那些数据出现在哪里,这样整理之后,用户检索时搜索引擎能很快的"想起来",并按相关度从大到小排序反馈给用户。
在接收和整理信息的过程中,应用了大量的文本信息检索技术,并根据超文本的特点引入了更多的信息。JAVA正则表达式对于垂直搜索引擎也是意义重大,而现今对正则表达式垂直引擎的主要研究是如何平衡匹配文本的时间复杂度和编译正则表达式结构的空间复杂度[9]。
2.2垂直搜索引擎特点
我们按其工作方式不同主要可分为三种,分别是目录索引类搜索引擎、全文搜索引擎和元搜索引擎[5]:
1.目录式搜索引擎最典型的例子是初代搜索引擎Yahoo,这类搜索引擎检索信息需要人工方式或者自动方式搜集信息。
2.全文搜索引擎是从网站提取信息建立网页数据库。
3.元搜索引擎又叫集合型搜索引擎。
垂直搜索引擎不像通用搜索引擎会抓取页面内所有内容,而是对网页页面内对特定部分进行结构化抓取。所以垂直搜索引擎需要进行定制。通用搜索引擎抓取的最小单位是一个网页。而垂直搜索引擎抓取的单位是结构化数据。网络蜘蛛只会爬取某一类或者某一领域的网站或网页而不是全互联网[6]。抓取后的数据信息经过一定的加工处理之后以搜索引擎的方式供用户检索。
2.3 Http Client
Http(超文本传输协议)是互联上最为广泛的一种网络协议。用于从WWW服务器传输超文本到本地浏览器的传输协议,而且所有的WWW文件都必须遵守这个标准。它定义了浏览器如何向万维网服务器请求万维网文档,以及服务器如何把文档传送给浏览器。HTTP是应用层的协议,使用TCP协议提供的运输层服务。HTTP协议本身无连接,即传输HTTP报文时不需要建立"HTTP连接"(但TCP连接需要建立)[7],这样会节省很多传输时间。HTTP协议也是无状态的(无记忆),也就是同一个客户两次访问同一个服务器资源,两次请求的响应相同,服务器不会记录访问者的信息,也就是不会跟踪用户,这使得HTTTP服务器能处理大量并发的请求,让网页爬虫的实现成为可能。HTTP有两种报文格式,分别对应请求和响应。请求报文由请求行、请求头部、空行、请求数据四部分组成。响应状态由状态行、响应头部、空行和响应数据四部分组成。HTTP协议的常用请求方法有GET和POST。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/wljs/87.html

好棒文