新闻类垂直搜索引擎系统研究与设计
2016-12-27方志民戴洋洋董淑珍温芳馨宋新航
方志民,戴洋洋,董淑珍,李 渤,温芳馨,宋新航
(黑龙江工程学院 计算机科学与技术学院,黑龙江 哈尔滨 150050)
新闻类垂直搜索引擎系统研究与设计
方志民,戴洋洋,董淑珍,李 渤,温芳馨,宋新航
(黑龙江工程学院 计算机科学与技术学院,黑龙江 哈尔滨 150050)
随着互联网技术的飞速发展,新闻类信息资源呈现出信息量大且分散、种类多、具有不一致性和不完整性等特点,传统的通用搜索引擎服务已不能解决网民对新闻信息获取要求精、准、全、快的问题。采用垂直搜索引擎,利用JAVA语言和MYSQL数据库,设计并实现一个包括网络信息爬取、信息存储、索引创建、索引查询、页面查询与展示等功能的新闻类垂直搜索引擎系统。该系统可以实现人们对新闻类资源信息的无误定位,具有快速、准确、实时、实用等特点。
搜索引擎;垂直搜索;新闻搜索;互联网
随着互联网技术的飞速发展,Internet上的信息量呈爆炸性增长,现实生活中人们经常通过搜索关键词进行信息检索。然而,这种查找方式通常会得到成千上万条信息,其中包含大量不相关信息、重复信息和死链接等,用户在很短的时间内很难准确地筛选出最重要的信息,特别是对于特定行业的科研和从业人员,希望通过搜索得到更专业、更深入和更有价值的信息。
根据搜索的内容范围,搜索引擎可分为综合型和专题型检索工具,即水平搜索引擎与垂直搜索引擎[1]。综合搜索引擎的资源非常丰富,用户可以利用它来检索任何类型的信息资源,但它搜索出的信息内容无序,查询不准确,有较多的死链接,并且深度也不够。垂直搜索引擎是一种新的搜索引擎服务模式,主要针对某一特定领域、人群及需求提供有一定价值的信息和相关服务,其特点就是专、精、深且具有行业色彩[2-3]。
现今很多大型的网站如Google、Baidu、Yahoo、Bing在综合搜索引擎方面做出了非常好的范例,从各种角度满足着个人对信息量的需求。针对行业的特点,运用垂直引擎专门针对旅游爱好者,开发的去哪儿、携程、途牛等网站,还有大家比较熟悉的大众点评网站、高德地图等等。运用垂直引擎开发的系统和网站追求专业性与服务深度,具有重复率低、相关性强、查准率高的特点。新闻信息是一种特殊形态的信息,新闻标题都是以简短的文句概括新闻内容,集中体现新闻的传播价值。随着信息化网络的日益成熟,纷繁复杂的网络新闻在网络媒体中进行传播[4]。对新闻爱好者却没有提供功能相对完善的系统和网站,用户迫切需要一个数据分类细致、精确、全面、更新及时的、面向特征的搜索技术和方法来获得新闻资源信息。
1 新闻类垂直搜索引擎总体设计
1.1 组成结构
垂直搜索引擎主要由网络蜘蛛、索引与搜索、Web服务三大模块组成,如图1所示。网络蜘蛛也被称为“网络机器人”(Spider),网络蜘蛛模块主要负责网络信息提取与存储[5]。该模块能够爬行指定网站,从互联网的网页上抓取所需要的数据,并将抓取回来的页面(主要是目标网站的基本信息页面)保存于服务器中。索引模块包括索引器和索引数据库、中文分词子模块和网页过滤子模块。索引器将原始数据库的内容重新组织,建立索引数据库,以提高检索效率。搜索模块根据用户输入搜索内容,搜索程序将通过索引数据库进行检索,然后把符合查询要求的数据按照特定的策略进行分级排列并且返回给用户。Web服务模块负责查询页面、信息检索、搜索结果页面的展示功能,包括负责监听服务器端口、调用搜索模块的接口进行查询等功能。
图1 垂直搜索引擎的组成结构
1.2 工作原理
新闻类垂直搜索引擎主要有3个基本模块:网络蜘蛛模块、索引与搜索模块、Web服务模块,在工作原理上同通用搜索引擎基本相同。
网络蜘蛛模块保证在输入一定搜索关键字之后,对信息进行采集,根据信息的匹配程度,把能够满足用户需求的信息提取出来[6]。模块又分为Spider模块和网页评分模块。Spider模块是搜索器,主要依靠主题网络爬虫程序自动爬取符合爬取策略的相关网页信息,包括提取网页中的链接信息,为下一次爬取提供网页地址;提取正文内容,存入数据库,以便供索引模块对其进行索引工作。网页评分模块根据文档的内容,判断文档的内容和主题是否相关,如果相关,在文档中的标题、正文、超链接中会有和主题相关的关键词,给每个关键词一个权重,就能够访问和主题相关的URL[7]。为了实现网络信息的定向提取、存储,本系统采用了Google提出的网页评分机制PageRank 算法[8-9],实现了网络信息的定向提取、存储。实践证明PageRank能够大幅度地提高检索之后返回结果的质量。
索引与搜索模块主要部件是索引器与检索器。索引器是根据上述搜索器搜索得到的信息,经过一系列的处理得到的关键词,建立从关键字到网页URL(统一资源定位器)的关系索引倒排文档,即建立索引数据库。同时索引需要及时更新,更新的内容存入到索引数据库中。中文分词模块采用的是Lucene中文分词技术,用于构建中文搜索引擎。网页过滤模块用于对网页信息进行结构化抽取,然后把提取的数据进行深度加工处理,过滤网页噪声。检索器的功能是根据用户输入的查询词,在索引数据库中进行查询词与索引数据库的匹配算法,然后将查询结果按相关程度排序并输出到浏览器上。
Web服务模块搜索引擎大部分都是通过Web服务向用户提供搜索功能,这就需要系统提供Web服务并且与索引数据库进行连接。客户输入搜索内容在浏览器中,Web服务接收到客户的搜索内容后在索引数据库中进行查询、整理并将其返回给客户端,实现为用户提供搜索服务的功能。
2 模型实现与验证
2.1 系统实现
为了验证提出的新闻类垂直搜索引擎系统的有效性,对所设计的垂直搜索引擎系统进行了模拟实现。网络蜘蛛功能首先加载配置文件,读取配置信息,包括网站种子链接、链接过滤方式等信息。然后,进行初始化操作,包括种子链接初始化、数据库链接初始化、爬取策略初始化、蜘蛛程序初始化。最后,创建执行程序实例,进行信息提取。索引模块和查询模块使用Lucene框架对数据库中各字段数据进行分词索引,并使用Lucene提供的查询功能实现Web查询[10]。Web服务功能使用Tomcat作为Web容器,采用JSP进行前台页面展示,Java进行后台业务逻辑运算。新闻类搜索引擎的查询与展示页面如图2所示。
图2 新闻类搜索引擎的查询与展示页面
2.2 模型验证
为了满足用户对信息查询的需求,提高用户的搜索体验,覆盖率和准确率是两个非常重要的性能指标。但是,由于覆盖率要涉及整个Web中信息资源的分布情况,在现实测试中一般很难得到,所以不进行覆盖率测试。准确率是表示网络中所采集的相关网页数和所有采集的页面数的比率[11]。本文对系统的准确率、响应时间、稳定性等进行了测试,系统运行环境为:内存4 GB、CPU 3.3 GHz、硬盘500 G、网络100 M、操作系统Windows 7 、Web服务器为Tomcat服务器,系统运行1 h后的实验结果如表1所示。从表1可以看出,该系统响应时间快、系统稳定性好、准确率高。
表1 Spdier准确率测试数据
3 结束语
本文开发的面向新闻类信息检索的垂直搜索引擎系统弥补了传统搜索引擎技术在新闻检索领域存在的缺陷,不仅能使新闻用户从众多的新闻来源中快速获取自己想要的信息,还能保证在新闻的完整性以及各种评论等数据准确性的情况下,自动进行数据的抓取分析,保证用户能够实时查看新闻的最新相关消息以及发展情形。最后,该系统还能对异常情况做出快速处理,具有一定的灵活性。
[1] 陈新颜.垂直搜索引擎辨析[J]. 现代情报,2004, 24(9):133-134.
[2] 季春, 姜琴, 吴铮悦. 垂直搜索引擎关键技术研究综述[J]. 情报探索, 2012(10):91-93.
[3] 赵海智. 浅谈计算机技术在现代社会发展中的重要性[J]. 中国科教创新导刊, 2012(23):175-175.
[4] 贺立凯. 浅析网络新闻标题的特色[J]. 北方文学旬刊, 2015(3):177-178.
[5] 张彧. 基于Nutch的农业信息垂直搜索引擎的研究与实现[D]. 北京:北京邮电大学, 2013.
[6] 徐玲玉, 何利力. 浅析垂直搜索引擎的应用[J]. 计算机光盘软件与应用, 2014(10):101-102.
[7] 张启宇, 于辉辉, 陈英义,等. 基于农业垂直搜索引擎中文分词词典的构建研究[J]. 广东农业科学, 2015, 42(3):165-169.
[8] BRIN S, PAGE L, MOTWAMI R, et al. The PageRank citation ranking: bringing order to the web. Technical Report 199-0120, Computer Science Department, Stanford University, Stanford, CA, 1999.
[9] KAMVAR S D, HAVELIWALA T H, GOLUB G H. Adaptive methods for the computation of PageRank. Linear Algebra Appl, 2004, 386: 51-56.
[10] 宋献民, 逄焕利, 魏姁妲. 基于lucene的垂直搜索引擎的研究与设计[J]. 信息技术与信息化, 2015(1):147-148.
[11] 周屹, 辛壮, 方志民,等. 基于自然交互的教学辅助系统研究与设计[J]. 黑龙江工程学院学报, 2015(6):38-40.
[责任编辑:郝丽英]
Research and design of news vertical search engine system
FANG Zhimin,DAI Yangyang,DONG Shuzhen,WEN Fangxin,LI Bo,SONG Xinhang
(College of Computer Science and Technology, Heilongjiang Institute of Technology, Harbin 150050, China)
With the rapid development of Internet technology, news information shows the characteristics of amouts, disperstiveness, variety, inconsistency and incompleteness. Traditional search engine can not cater to the Internet users` need of grabbing information precisely, comprehensively and quickly. This paper uses a vertical search engine, supported by JAVA and MYSQL database, to design and achieve a news search engine system covering network information crawling, information storage, index creation, index query, interface query and display. This system can realize the accurate positioning of information resources, and has the characteristics of being fast, accurate, real-time, practical and so on.
search engine; vertical search; news search; Internet
10.19352/j.cnki.issn1671-4679.2016.06.008
2016-09-20
黑龙江省大学生创新训练项目(201611802087);黑龙江省大学生创新训练项目(201511802013)
方志民(1994-),男,本科生,研究方向:网络应用.
TP391.3
A
1671-4679(2016)06-0035-03