当前位置: 首页 > 专利查询>南通大学专利>正文

一种基于Nutch的Web信息提取方法和系统技术方案

技术编号:11300526 阅读:143 留言:0更新日期:2015-04-15 18:00
本发明专利技术公开了一种基于Nutch的Web信息提取系统,包括信息提取模块、存储模块、索引模块和检索模块;所述信息提取模块通过Nutch框架从互联网中抓取网页数据,解析数据;所述存储模块用于存储过滤掉网页数据的网页提取文件;所述索引模块用于将Nutch采集的网页信息传递给Solr建立索引;所述检索模块使用Solr响应用户查询请求并把查询结果以XML页面形式显示给用户。提高了信息提取的响应和运行速度、稳定性及可扩展性,减少程序占用过多的存储空间,为用户能够及时地获得有效信息提供保证。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种基于 Nutch 的 Web 信息提取系统,包括信息提取模块、存储模块、索引模块和检索模块;所述信息提取模块通过 Nutch 框架从互联网中抓取网页数据,解析数据;所述存储模块用于存储过滤掉网页数据的网页提取文件 ; 所述索引模块用于将 Nutch 采集的网页信息传递给 Solr 建立索引;所述检索模块使用 Solr 响应用户查询请求并把查询结果以 XML 页面形式显示给用户。提高了信息提取的响应和运行速度、稳定性及可扩展性,减少程序占用过多的存储空间,为用户能够及时地获得有效信息提供保证。【专利说明】_种基于Nutch的Web信息提取方法和系统
本专利技术涉及计算机Web信息检索领域,尤其涉及一种基于Nutch的Web信息提取方法和系统。
技术介绍
随着网络信息技术的迅猛发展,计算机软件程序提供的服务功能日益完善,使得各个计算机软件附带的信息数据急剧膨胀。网页已经成为互联网上最重要的信息资源。然而网页上的信息包含了大量与网页主题信息无关的内容,使得页面的主要信息经常被隐藏在无关的内容和结构中,限制了 Web信息的可利用性,并且Web上的大数据正呈指数级形式飞速增长,使得Web成为全球最大的数据集合,因此基于大规模Web的信息提取一直是国内外学者研宄的热点,也是必须要解决的一大难题。然而传统的信息提取方式往往主要针对单一节点或在提取算法的改进方面,数据库存取方式往往采用传统的关系型数据库进行处理,这对提高Web信息提取的效率作用较小,不能满足当前大规模海量Web数据提取与分析的能力要求,尤其是进入大数据时代后,已然不能适应现有的数据规模与网页形式的要求。无法满足需要获取信息量庞大的计算机使用者。 Nutch是一个基于Lucene的优秀开源搜索引擎,采用Hadoop的MapReduce并行编程框架来实现对数据的处理,提高数据的处理速度,为大数据的Web信息提取提供了基本的框架。现如今,MapReduce编程方式占据了 Nutch核心结构的大部分,将Nutch框架运行在分布式系统上,其抓取效率得到了显著提高。Nutch的网络爬虫从网络上抓取网页数据并建立索引,而查询根据用户所提交的关键词利用这些索引来检索,并以XML形式将检索结果返回给用户。
技术实现思路
针对现有大规模Web信息提取,数据提取片面、存取效率低下的问题。为解决上述问题,本专利技术提供了一种信息提取的响应速度、可靠性及可扩展性更好的基于Nutch的WebIs息提取方法和系统。 本专利技术的技术方案是:一种基于Nutch的Web信息提取系统,包括信息提取模块、索引模块和检索模块;所述信息提取模块通过Nutch框架从互联网中抓取网页数据,解析数据;所述存储模块,用于存储网页搜寻条件和过滤掉网页数据的网页提取文件;所述索引模块用于将Nutch采集的网页信息传递给Solr建立索引;所述检索模块使用Solr响应用户查询请求并把查询结果以XML页面形式显示给用户界面。 优选的,所述信息提取模块利用Nutch框架爬取网页,完成数据的存储,将数据传递给Solr进行索引;同时根据中文分词进行处理,产生Nutch抓取队列,利用存储模块对抓取数据库中的网址进行过滤,产生要将待抓取的数据放到抓取队列中,,并将分词后的词元序列给索引模块。 优选的,所述索引模块利用开源项目Solr根据Nutch传递来的网页信息完成索弓丨,并为检索模块提供支持。 优选的,所述检索模块根据关键词集对Nutch爬取的信息进行检索,将检索后的结果排序后返回给用户。 本专利技术还公开了一种基于Nutch的Web信息提取方法,包括以下步骤:SI 1:建立初始URL集合,根据URL过滤规则将URL集合注入数据库CrawlDB中,接着对CrawlDB进行信息分析并生成抓取列表;S12:设置抓取深度cbpth及每层下载的URL数量topN,然后对网页数据进行抓取工作,并更新数据库CrawlDB中的内容;S13:解析抓取的网页信息,利用Solr对抓取的网页数据建立索引;S14:响应用户的查询请求并将请求结果返回给用户界面。 优选的,所述生成的抓取列表数量与设置的线程数相等。 进一步的,所述步骤S12包括:S21:用于下载的线程Fetcher会根据fetchlist集合的内容抓取相关的网页数据,解析网页,提取相关URL,根据过滤规则将更新的URL注入到CrawlDB中,判断抓取网页层数是否达到设定的深度depth;S22:若已抓取网页层数大于设定的深度cbpth,则抓取流程结束;S23:若小于或等于设定的深度depth,则更新数据库CrawlDB,并从从CrawlDB中取出前topN个URL进行抓取;S24:若抓取列表中待抓取的URL为空,则根据CrawlDB生成新的抓取列表并循环步骤 S21;S25:若抓取列表中存在未抓取的URL,则取出一个URL,抓取该URL的网页内容,并将网页内容存入数据库和传递给Solr建立索引;对网页内容进行解析,并将解析结果插入到Mysql数据库中;提取抓取网页的外链outlinks,将outlinks插入到CrawlDB数据库中,循环步骤S24。 进一步的,所述步骤S13包括:利用Solr对抓取的网页数据建立索引,将生成的索引文件存储到索引库中,为查询提供数据源;通过配置Nutch的插件机制,对各种形式的文档进行解析;通过调用Nutch框架中的Analyzer类对数据格式化;利用中文分词对文本内容进行切分;根据停用词表过滤词条。 进一步的,所述步骤S14包括:用户将查询请求提交至Web服务器;利用创建的Indexsearcher实例对象,实现对目录索引的访问;调用检索索引库的程序根据关键字处理用户的查询请求,并将相应的查询结果以XML页面形式返回给用户。 进一步的,信息抓取之前,遍历slaves的内容,检查每个节点;并用jps命令查看服务的运行状况。 本专利技术的优点是:1、本专利技术通过对给定的数据库进行信息分析,利用Nutch原有的分布式采集系统对资源进行采集,对抓取下来的数据通过HDFS文件系统进行分布式存储或将数据存储到数据库中,并利用Solr建立索引,提高了信息提取的响应速度、可靠性及可扩展性,节约了用户时间,提高工作效率。 2、利用Nutch框架获取网络中的海量Web信息,将复杂的、消耗大量计算资源的提取过程通过Hadoop集群分配到多个节点上进行,将Nutch框架与Mysql数据库结合,实现了网页的抓取、存储、索引及检索,提高了信息检索的效率,为用户能够及时地获得有效信息提供保证。 3、将Nutch与Solr结合实现对网页的抓取、索引及检索,使Nutch专注于实现爬取的功能,将索引和检索任务交给Solr实现,降低了 Nutch的负担,提高了爬取的效率,使爬取和检索更加高效。 【专利附图】【附图说明】 下面结合附图及实施例对本专利技术作进一步描述:图1为本专利技术基于Nutch的Web信息提取系统的系统总体示意图;图2为本专利技术基于Nutch的Web信息提取系统的系统总体流程框图;图3为本专利技术基于Nutch的Web信息提取系统中系统爬虫结构图;图4为本专利技术基本文档来自技高网
...

【技术保护点】
一种基于Nutch的Web信息提取系统,其特征在于,包括信息提取模块、存储模块、索引模块和检索模块;所述信息提取模块通过Nutch框架从互联网中抓取网页数据,解析数据;所述存储模块,用于存储网页搜寻条件和过滤掉网页数据的网页提取文件;所述索引模块用于将Nutch采集的网页信息传递给Solr建立索引;所述检索模块用于使用Solr响应用户查询请求,并把查询结果以XML页面显示于用户界面。

【技术特征摘要】

【专利技术属性】
技术研发人员:施佺徐露丁卫泽程显毅丁卫平李冬冬孙鸿艳
申请(专利权)人:南通大学
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1