网站大量收购独家精品文档,联系QQ:2885784924

基于HTML Parser的WEB信息提取系统的设计和实现.docVIP

基于HTML Parser的WEB信息提取系统的设计和实现.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于HTML Parser的WEB信息提取系统的设计和实现   摘要:Web信息的急剧增长,给信息的有效使用提出了巨大挑战,如何快速、准确地从Web中获取所需信息己经成为亟待解决的问题。基于HTML Parser包的Web页面信息提取系统能够准确的提取用户感兴趣的信息用于进一步分析,更加充分有效地利用Web这个巨大的信息源。这种方法可以普遍适用于WEB页面的信息提取。   关键词:WEB信息提取;HTMLParser正则表达式   中图分类号:TP311文献标识码:A文章编号:1009-3044(2011)04-0970-03   随着计算机的普及以及互联网(WWW)的迅猛发展,大量信息以电子文档的形式出现在人们的面前,但由于人类审美观以及商业上的需求,现在的Web页面除了包含与主题相关内容外,还充斥着大量与主题无关的信息,影响了对有用信息的辨别。为了应对信息过载的挑战,信息提取技术应运而生,它的主要功能是从WEB文本中提取出特定的事实信息,比如,从新闻报道中提取出恐怖事件的详细情况:地点、作案者、受害者、袭击目标、使用的武器等;从经济新闻中提取出公司发布新产品的情况:公司名、产品名、发布时间、产品性能等。如何让计算机从WEB数据源中获取用户感兴趣的信息,避免“数据爆炸,知识匾乏”的尴尬,正是WEB提取技术的关键所在。   1 系统结构   HTML Parser是一个纯Java编写的HTML解析工具库,它不依赖于其它的Java库文件,主要用于改造或提取HTML。它能高效率解析HTML文档,而错误率几乎为零,是目前最好的HTML解析和分析的工具。本系统首先利用HTML Parser递归提取各层URL信息,然后利用正则表达式对各URL对应页面进行电子邮件信息提取。   1.1 提取网站内部的电子邮件数据算法   输入:某一网站首页地址(URL)。   输出:本网站内部Deep层页面上的电子邮件信息。   算法:   l) 提取首页URL信息(n个);   2) 递归处理首页的URL信息Deep层,分别提取各层页面上的URL信息;   3) 将提取到的URL信息存入数据库;   4) 分析所有URL对应的页面并提取电子邮件信息,将提取到的电子邮件信息存入数据库。   1.2 系统构成   l) 提取URL模块   系统的核心之一,它实现的主要功能是利用HTML Parser API,提取初始URL页面Deep层上的所有URL。   2) 提取Email信息模块   首先利用HTML Parser API将所有URL页面的文本内容存入文本文件中,然后利用正则表达式提取该文本文档中的Email信息,接着对其余页面做同样处理。   3) 存储模块   利用MySql存储提取的Email数据,并不断更新数据库避免保存重复信息。   2 系统实现   2.1 提取Deep层页面内链接   提取Deep层页面内链接的算法为extractLinks(String loc),该算法实现了递归搜索网站内部Deep层所有的URL信息并保存于svecLink。   算法所需全局变量定义如下:   Public static Vector svecLink=new Vector();//存放内部的URL   Public static Vector svecOutLink=new Vector();//存放外部的URL   Public static String hostName;//主机名称   GetHostName(String URL);//判断URL是否为网站内部URL   递归搜索部分代码如下:   Public void extractLinks(String loc) throwsParserException   {   Vector vecTemp=new Vector();//保存一层页面的URL用于递归搜索   this.parser=new Parser(loc);//HTML parser的入口   parser.setEncoding(“gh2312”);   Node [] links=parser.extractAllNodesThatAre(LinkTag.class);//解析出loc对应页面内所有链接标签   for(int i=0;iLinks.length;i++){   LinkTag linkTag=(LinkTag)links[i];   strl=linkTag.getLink();//获得某一URL[I]   if(!svecLink.contains(strl)){//避免保存重复的URL   if(GetHostN

文档评论(0)

heroliuguan + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8073070133000003

1亿VIP精品文档

相关文档