课程设计(论文)-基于Web的信息提取技术研究.docx_第1页
课程设计(论文)-基于Web的信息提取技术研究.docx_第2页
课程设计(论文)-基于Web的信息提取技术研究.docx_第3页
课程设计(论文)-基于Web的信息提取技术研究.docx_第4页
课程设计(论文)-基于Web的信息提取技术研究.docx_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于Web的信息提取技术研究目录摘要4第1章绪论51.1研究背景51.2研究意义51.3本文研究内容61.4论文结构安排6第2章Web信息抽取概述72.1 Web信息抽取的发展历史72.2 Web信息抽取的定义和Web信息的特点72.3 Web信息抽取技术分析82.3.1 基于正则表达式的信息抽取82.3.2 基于自然语言处理的信息抽取82.3.3 基于本体的信息抽取92.3.4 基于包装器归纳的信息抽取92.3.5 基于HTML结构的信息抽取92.3.6 基于Web查询的信息抽取92.4 本章小结9第3章 基于XML技术的Web信息抽取103.1 概述103.1.1 问题的提出103.1.2 网页的格式及XML技术的优势103.2 Web信息抽取流程113.3 相关技术介绍113.3.1 DOM模型113.3.2 Xpath11第四章 基于XML技术的Web信息抽取的实现124.1 Web文档的预处理124.1.1 将HTML文档解析为DOM模型124.1.2 将HTML文档转换为形式上的XML文档124.2 抽取规则134.2.1 抽取规则的设计134.2.2 抽取规则的生成144.3 信息抽取144.4 附加语义144.5 抽取规则的优化154.5.1 利用标记属性进行优化 154.5.2 利用标记之间的数量关系进行优化15第五章 结 论16本文总结16本文总结16参考文献17摘要随着互联网的快速发展和普及,人们越来越依赖于网络获取信息。作为海量的信息来源,Web可以看成是一个巨大的数据库,包含着各种各样有价值的信息。基于Web的信息抽取技术就是研究如何从这些Web源中抽取出用户感兴趣的信息,并把这些抽取出的信息表示成更具有语义,更为结构化的形式,以便加以利用。该技术起源于信息抽取技术,但由于Web信息的自身特点,该技术已经和传统的基于纯文本的信息抽取技术有了很大的不同。目前,大量Web信息被保存在网站的后台数据库中,这些信息在网页上的显示有一些共同的特征,即通常把数据库中的数据插入到网页的一个模板中,其表现形式就是网页的主体部分有多个局部信息块组成,局部信息块有多个数据项构成。这类网页被称为数据密集型(data-rich)网页,由于该类网页富含大量有价值的信息,因此,研究如何对这类网页进行Web信息抽取有重大的意义和实用价值。对于上述数据密集型网页,本文采用基于XML的相关技术来解决Web信息的抽取问题。其解决方案是:首先获得目标网页,并将该HTML文档以文档对象模型DOM为中介,转换为形式上的XML文档,然后根据这类网页的特征,把该网页中信息的布局视为基于行和列的二维表形式,用户根据自身需求,通过与系统交互,系统半自动地生成基于行和相关列的XPath位置路径表达式作为抽取规则,根据抽取规则定位到待抽取的信息,从而实现信息的准确抽取,抽取的结果用XML来表示。关键词:Web信息抽取;DOM;XML第1章 绪论1.1 研究背景自九十年代初互联网(Internet)开始迅速发展至今,互联网已成为经济、社会、文化、教育以及娱乐等各个方面的重要组成部分,并正在成为我们工作和生活中不可或缺的一员。就我国而言,据CNNIC(中国互联网络信息中心)的统计,截止2010年7月,中国网民数已达4.2亿,网民平均每周上网时长达19.8小时,并且这两个数据还在不断地增长。正当人们越来越依赖互联网来获取信息的时候,信息过载的问题出现了。目前,网络信息的相当一部分是通过万维网(WWW)的Web页面提供的,但据CNNIC的最新统计显示:仅中国,网站数量已有279万个。面对如此庞大的数据,如何从浩如烟海的Web信息中快速、有效地查找用户需要的信息一直是互联网络应用的一个难题。近几年来,出现了多种基于Web的信息检索工具,如比较出名的Google、Yahoo、百度等搜索引擎工具,这些工具的出现极大地方便了人们对信息的获取,能够解决部分信息过载的问题,但由于它们都是基于字符串匹配和词义相似原理进行信息查询的,因此使用这些工具得到的查询结果动辄成百上千条,而且有很多返回的查询结果中包含了重复的内容,这就使用户得到了网页,并不等于得到了想要的信息资源。为了更加有效的组织和获取网上数据资料,高效地发现和利用Internet上的资源,研究人员开创了Web信息抽取这个研究领域。Web信息抽取技术的任务就是将网页中用户感兴趣的信息准确地抽取出来,以更具有语义、更结构化的形式保存下来,以供用户查询或其他应用程序利用。它与网络信息检索的区别是: 目的不同:网络信息检索是从海量的万维网上搜索到所需的Web文档,而Web信息抽取不仅要首先获取Web文档,而且要更进一步地从这部分文档中抽取出有价值的,为后续工作所用的信息。 面向的用户群不同:网络信息检索面向大众,与领域无关,而Web信息抽取是面向特定用户群,且是应用领域相关的。 处理技术不同:网络信息检索系统通常对网页中的文字进行分词,建索引,然后利用统计及关键词匹配等技术;而Web信息抽取通常利用各种技术生成规则或模板对特定Web信息源进行抽取。此外,两种技术也有一定的联系,可以互为利用。例如,可以把网络信息检索看成是大范围的、粗粒度的信息抽取,把它作为更精确、更细粒度的Web信息抽取的前奏。网络信息检索也可以把Web信息抽取作为它的一部分,构建面向领域的垂直搜索引擎。由此可见,Web信息抽取技术给人们从网络中获取信息又提供了一个强大的工具。1.2 研究意义Web信息抽取技术有很强的实用性,可把该技术看作构建其他应用系统的基础,其重要性可归纳如下:1) 从数据挖掘的观点看,Web信息抽取是Web数据挖掘的重要组成部分。Web挖掘主要分为三类:Web结构挖掘(主要为超链接的分析)、Web使用记录挖掘(日志挖掘)、Web内容挖掘。Web信息抽取是Web内容挖掘的重要基础技术,特别是Web文档的分类、聚类都可以受益于该技术。2) 从信息集成的观点看,Web信息抽取是信息集成首先要解决的关键技术之一。信息集成首先要从多个不同的数据源抽取数据,其次才能集成这些抽取的异质数据,在这些不同的数据源中,Web信息源当然是非常重要的来源。3) 此外,一些新颖的实际应用也必须利用Web信息抽取技术。例如: 网上比较购物系统:利用Web信息抽取技术抽取多个不同的电子商务网站的商品信息,对产品价格等信息作比较后推荐给用户。 构建企业竞争情报系统:利用Web信息抽取技术到同行业竞争对手的网站上抽取相关信息和追踪行业动态。 提供个性化的主动信息推送服务:在目标网站抽取用户感兴趣的信息,定期主动推送给用户。 除此之外,还有在诸如Web新闻页自动文摘系统和主题搜索引擎中,都需要用到Web信息抽取技术。1.3 本文研究内容本文作者在经过大量检索、收集、阅读相关文献和相关技术文档后,通过观察、分析、试验以及总结前人研究的基础上,主要作了以下几个方面的工作:l 综述Web信息抽取及相关技术方法,主要内容包括相关概念的介绍,技术专有名词的解释说明,还包括对各种技术的分类,优缺点的分析。l 重点研究了数据密集型网页的信息抽取问题。本文首先分析了这种类型网页的特点,根据该类型网页的特点,设计了解决该类Web信息抽取问题的方案:把网页中的信息抽象成行和列的二维表形式,利用XML技术,通过行和列的XPath位置路径表达式对待抽取Web信息进行定位,从而实现信息抽取。本文具体研究了:HTML文档的预处理;抽取规则的生成;对预处理后的HTML文档应用XML技术进行信息抽取;应用XPath技术进行抽取规则优化;将抽取后的信息转换为更具有语义,更为结构化的数据XML文档。1.4 论文结构安排全文共分六个部分,前五部分各成一章,最后一部分为总结和下一步工作。现概括如下:第一章是绪论部分,主要说明研究的背景,研究的意义,以及本论文的主要研究内容。第二章是Web信息抽取技术的概述,主要说明Web信息抽取的发展历史,Web信息抽取的定义,Web信息的特点。其中重点分析了现有的Web信息抽取技术及其优缺点。第三章重点研究基于XML及相关技术抽取Web信息的原理、解决方案、相关技术标准。第四章是本论文的主要工作。本章详细阐述了对数据密集型网页进行信息抽取的解决方案。第五部分是总结和展望,这部分总结了本文的研究成果,指出了下一步要进行的研究工作。第2章Web信息抽取概述2.1 Web信息抽取的发展历史传统的信息抽取(IE,Information Extraction)是从自然语言文本中抽取出特定信息的过程,具体是把文本里包含的信息进行结构化处理,转变成表格或其它良好结构的文本形式。信息抽取系统的输入是原始文本,输出的是固定格式的,无二意性的数据,这些数据从各种各样的文档中被抽取出来,然后以统一的形式集成在一起。信息抽取技术并不试图全面理解整篇文档,只是对文档中包含相关信息的部分进行分析,至于哪些信息是相关的,那将由系统设计时定下的领域范围而定。信息抽取的主要功能是从文本中抽取特定的事实信息,比如,从新闻报道中抽取出恐怖事件的详细情况:时间、地点、作案者、受害者、袭击目标、使用的武器等;从经济新闻中抽取出公司发布新产品的情况:公司名、产品名、发布时间、产品性能等;从招聘广告中抽取招聘公司名称、简介、提供的职位、对职位的说明、招聘人数、对求职者的要求等。通常,被抽取出来的信息以结构化的形式描述,如可以直接存入数据库中,供用户查询以及进一步分析利用。传统的信息抽取技术起源于80年代术,兴起于90年代,该技术的蓬勃发展主要得益于消息理解(MUC,Message Understanding Conference)系列会议的召开。MUC会议建立了专门的术语,信息抽取最终的输出结果被称为模板(Template),模板中的域称为槽(Slot),而把信息抽取过程中使用的匹配规则称为模式(Pattern)。例如,从新闻报道中抽取的结果模板中就可能是时间、地点、事件这三个槽。MUC会议首先在会前向参加者提供样例文本和有关的抽取任务说明,然后各参加者开发能够处理这种消息文本的信息抽取系统。在正式会议前,各参加者运行各自的系统处理给定的测试消息文本集合。由各个系统的输出结果与手工标注的标准结果相对照得到最终的评测结果。最后才是正式的会议,公布各参与者的结果和排名,并提供机会给参与者交流学术思想和感受。MUC的七次会议从早期的MUC一1对海军军事情报的抽取到MUC一7抽取任务越来越复杂,要求抽取结果要填充的槽也越来越多。随着MUC等系列的会议多年的推动下,信息抽取技术逐渐发展起来。传统信息抽取主要是以自然语言处理(NLP,National Language Process)技术为基础,通常包括命名实体的识别、句法分析、篇章分析与推理。命名实体是文本中基本的信息元素,简单地说,命名实体是指现实世界中的具体的或抽象的实体,如人、组织、公司、地点等。利用句法分析将得到输入的某种结构表示,而篇章分析与推理能够识别文本中的共指现象,通过必要的推理,以合并描述同一事件或实体的信息片段。对于传统的信息抽取系统的设计主要有两大方法:一是知识工程方法(Knowledge EngineeringApproach),二是自动训练方法(AutomatiC Training Approach)。知识工程方法主要靠手工编制规则使系统能处理特定知识领域的信息抽取问题。自动训练方法主要靠机器学习,系统主要通过学习已经标记好的语料库获取抽取规则,经过训练后,系统利用这些抽取规则从新文本中抽取信息。随着互联网的出现,万维网的发展和繁荣,信息抽取的研究人员逐渐将兴趣转移到Web信息抽取的研究上。同时,其他如数据库、数据管理、数据集成、网络信息处理等领域的很多研究人员也开始关注并研究Web信息抽取技术。2.2 Web信息抽取的定义和Web信息的特点Web信息抽取的定义简单的说来,是指从Web页面中抽取用户感兴趣的信息而过滤掉不相关的信息,具体是指从网页所包含的无结构或半结构的信息中抽取出用户感兴趣的数据,并将其转化为更为结构化、语义更为清晰的格式。Web信息抽取的过程可以简单地用图21来表示,通常把完成Web信息抽取工作的程序叫做包装器,包装器在整个信息抽取过程中是核心模块。图2-1 Web信息的抽取过程目前,Web上的信息通常被认为是以半结构化数据的形式存在的。Web上的信息具有如下特征:1) 层次性:Web页面中的数据通常具有一定的层次结构,这种层次结构体现在HTML布局标记的嵌套使用上。2) 有序性:有些Web页面上的数据元素之间有严格的顺序关系。如在新闻网页中,标题信息肯定在正文信息之前,在电子商务网页上,商品名称总是在商品价格之前。3) 混合性:Web页面中的数据内容和数据结构总是混合在一起,这种特征是Web页面的主要特征,该特征使数据内容缺乏语法,但又有一定的结构特征,不过这种结构特征通常又无法用精确的模式加以描述。Web信息的半结构化特性主要是由于Web文档采用超文本标记语言HTML来描述而造成的。用HTML语言编写的Web文档是由标记(TAG)和文本组成的,HTML标记确定了与其对应的文本在浏览器中的显示外观。HTML语言的这种设计的主要目的是为了对数据进行展示,而并非用于数据处理,这就给Web信息抽取造成了很多困难。2.3 Web信息抽取技术分析在上一节中给出了Web信息抽取的定义并总结了Web信息的特点,从中可以看出Web信息的半结构化特性给Web信息抽取造成了困难,那么为了实现Web信息抽取,研究者提出了各种各样的技术来解决该问题,在下面部分总结了其中的重要技术。2.3.1 基于正则表达式的信息抽取正则表达式(Regular Expression)是用某种模式去匹配一类字符串的一个公式。在字符串处理中,正则表达式是对复杂字符串进行模式匹配的强大工具。采用该技术进行信息抽取首先把Web文档作为一个字符流的文件来处理,通过制定合理的正则表达式去匹配待抽取的信息,然后抽取其中想要的信息。2.3.2 基于自然语言处理的信息抽取这类信息抽取主要适用于Web源文档中包含大量文本的情况(特别针对于合乎文法的文本),在一定程度上借鉴了传统自然语言处理技术,需要经过的处理步骤包括:句法分析、语义标注、专有对象的识别(如人物,公司)和抽取规则。具体说就是把文本分割成多个句子,对一个句子的句子成分进行标记,然后将分析好的句子语法结构和事先定制的语言模式(规则)匹配,获得句子的内容。其实质就是利用子句结构、短语和子句间关系建立基于语法和语义的抽取规则实现信息抽取。规则可以人工编制,也可从人工标注的语料库中自动学习获得。2.3.3 基于本体的信息抽取本体(ontology)原本是哲学上的一个概念,是对自然存在及其本质的研究,属于形而上学理论的分支。本体所反映的是事物本质的,科学的内涵。在计算机科学中,人工智能领域的学者最先将本体的概念从哲学领域中借用过来,对于ontology,目前有代表性的定义是:本体是一种共享的概念化模型的明确的形式化规范说明。概念化是指对世界中一些现象通过标识其相关概念而得到的抽象模型,明确是指所使用的概念的类型以及对这些概念使用上的约束都有了明确的定义,形式化是指本体是机器可读的(即能被计算机处理),而不是完全用自然语言表达,共享则是指本体反映的是共同认识的知识,是相关领域中公认的概念集,不为某个人所独有,而为大家所接受。2.3.4 基于包装器归纳的信息抽取基于包装器归纳方式的信息抽取根据事先由用户标记的样本实例应用机器学习方式的归纳算法,生成基于定界符的抽取规则。其中定界符实质上是对感兴趣语义项上下文的描述,即根据语义项的左右边界来定位语义项,该定界符可以是HTML标记,也可以是其他字符(如文字或标点符)。2.3.5 基于HTML结构的信息抽取该类信息抽取技术的特点是,根据Web页面的结构定位信息。在信息抽取之前通过解析器将Web文档解析成语法树,通过自动或半自动的方式产生抽取规则,将信息抽取转化为对语法树的操作实现信息抽取。2.3.6 基于Web查询的信息抽取Web查询的思想是把万维网看成是一个巨大的数据库,利用数据库技术来进行互联网上数据的管理和查询,使得查询可以在更细粒度上进行,从而通过查询使用户得到想要的信息。2.4 本章小结在本章内容中,本文根据Web信息抽取所采用的不同技术,分类介绍了这些技术。目前,在Web信息抽取领域,经过几年发展,取得了一些成果。研究者们提出了各种不同的技术实现了Web信息抽取,各种技术都有各自的优点,但又有不足之处,主要有如下几点:1自动化程度和性能不一致,性能较好的信息抽取技术,需要用户的大量参与,而自动化程度较高的信息抽取技术,准确率和适应性较低,适用性较差。2Web信息抽取系统的核心是抽取规则的生成,有些信息抽取系统采用由自己定制的语言来表达抽取规则,对用户的要求较高,缺乏通用性,不利于推广普及。3有些Web信息抽取系统的适用范围过于狭窄,只能抽取论文,电话,电子邮件等。综上所述,如何提高Web信息抽取的自动化程度,如何尽最大可能方便用户的使用,如何进一步提高信息抽取的准确性,还需研究者们进一步研究。第3章 基于XML技术的Web信息抽取3.1 概述3.1.1 问题的提出互联网上存在大量的有价值信息,这些信息存储于各个网站的服务器中,以网页的形式展现给用户。目前,随着各种Web开发技术的应用和各种协助人们管理网站和制作网页的工具的普及应用,现在的网页,特别是富含信息的网页越来越具有如下特点:1网站的某类型网页通常具有统一的风格,在制作这些网页的时候通常采用相同的模板,其表现形式为网页的各部分具有相对固定的布局,如网页的最上面部分往往是网站的名称及logo图片以及导航栏,网页的最下面为版权信息,左或右侧栏是相关连接或广告信息,网页的中间部分是主体信息,信息抽取也主要是针对这部分。2网页中的主体信息往往具有局部信息块代码结构的重复性。这主要是由于目前很多有价值的信息是以Web数据库的形式存储在网站服务器中,当用户在前端进行表单查询或点击分类导航链接后,服务器会在后端对数据库进行查询然后按统一的代码结构生成返回页面。针对目前网页的这种新特点,特别是Web信息抽取的重要来源电子商务类网站通常都含有大量具有上述特点的网页,因此有必要对这种数据密集型网页的Web信息抽取进行研究。3.1.2 网页的格式及XML技术的优势目前,互联网上绝大多数的网页格式是用HTML描述的,少数Web20的网页的格式是用XML描述的。HTML38(Hyper Text Markup Language,超文本标记语言)是为网页创建和其它在网页浏览器中看到的信息设计的一种标记语言,。因此,HTML不能作为定义其它符号化语言的元语言。HTML用有限个数的标记以及其相应的属性来表示文档的结构和在浏览器中的显示外观,每个标记用两个尖括号括起来,如,。对于大部分标记都是由开始标记和结束标记所组成。不加斜杠的标记为开始标记,比如,加斜杠的标记为结束标记,比如,开始标记和结束标记之间的内容为这个标记的作用内容,比如b标记中的内容显示为粗体,title标记中的内容为文档标题等。XML39l(eXtensible Markup Language,可扩展标记语言)是由W3C于1998年2月发布的一种标准,它以一种开放的、自描述的方式定义了数据结构。在描述数据内容的同时能突出对结构的描述,从而体现出数据之间的关系。这样所组织的数据对于应用程序和用户都是友好的、可操作的。XML与HTML的区别:1XML是元标记语言,具有可扩展性,它允许人们自定义标记名,而HTML采用预定好了的有限标记,不允许扩展。2XML内容和表现相分离,XML标注内容,标注的内容可通过不同的样式表展示不同的外观,而HTML只是描述数据的外观。3XML语义性强,它通过自定义的标记来描述数据的语义,而HTML缺乏语义。从上所述可以看出XML的特点,正是这些特点使XML具有HTML所不具有的优势。目前,XML广泛用于数据交换,特别是行业电子商务信息的交换,异构信息的集成,Web服务等。除此之外,XML还拥有许多建立在XML上的技术,如XPath,XSLT,XPoint,XQuery,Xml Schema等,利用这些XML技术,就能够构建基于XML技术的Web信息的抽取解决方案。3.2 Web信息抽取流程针对本章第一节提出的问题,本文的解决方案是基于XML技术来实现Web信息的抽取,解决方案主要采用基于HTML结构的信息抽取方法,同时借鉴Web查询的思想,使用XPath位置路径表达式(XQuery查询技术的组成部分)作为抽取规则的核心。基于XML技术的Web信息抽取的流程如下:首先把HTML解析为DOM模型,然后根据此模型把HTML文档转化为形式上的XML文档,所谓形式上的XML文档是指符合XML语法,但标记仍然是HTML原文件中标记的XML文档。再次利用XPath定位待抽取的信息,从而生成以XPath位置路径表达式为核心的抽取规则,最后用该抽取规则对同类Web页面的信息进行抽取,抽取的结果用XML文档表示。在Web信息抽取流程中,由HTML文档通过解析得到DOM模型,再在DOM模型的基础上转换为形式上的XML文档的过程实质上是一个预处理过程,它是利用XML技术进行Web信息抽取的必须过程。在抽取流程中,用户根据自身需求即想要抽取什么信息,利用XPath定位待抽取的信息,最后由信息抽取系统生成抽取规则,抽取全部的信息,抽取信息的结果经过附加语义添加模式后以XML文档的形式存储。其中,对样本网页通过抽取流程生成的抽取规则可以保存下来,用于对和样本网页结构相同的一组相关网页的信息抽取。3.3 相关技术介绍在Web页面中抽取想要的信息,其难点就是如何在网页的源代码中找到待抽取的信息,而基于XML技术进行Web信息抽取解决这一问题的思路就是利用XPath,根据待抽取信息在XML DOM树中的位置信息即树路径来进行定位从而抽取出该信息。为了更好地说明如何利用XML相关技术进行信息抽取,有必要先对相关技术的特点作个简要的讲解。3.3.1 DOM模型DOM (Document Object Model 文档对象模型)是W3C组织提出的独立于编程语言和平台的一系列标准编程接口,但不具体实现,用户可以通过这些接口来访问文档中的数据,而DOM规范的实现者则提供一系列类,用来实现这些接口,提供相应的功能。3.3.2 XpathXPathl是XML路径语言(XMLPath Language)的简写,它定义了W3C认可的用于寻址XML文档各部分的语法。XPath使用一种紧凑的、非XML的语法来方便的实现XPath在XML文档中的查询操作,它依据文档的逻辑树型结构求XPath表达式的值,用以指定节点集合(例如:元素、属性、文本,等等)。XPath的核心语法架构是表达式,它包括位置路径表达式、布尔表达式、等式表达式、关系表达式、数值表达式,其中最基本的表达式是位置路径表达式(Location Path),通过位置路径表达式,我们可以精确的查找到XML中各种节点的位置。位置路径表达式由一系列的位置步(LocationStep)组成,它提供了从XML文档中选择节点的方法,它包括三部分:轴、节点测试和谓词,轴与节点测试用双冒号分开,每个谓词放在方括号中。在XML程序中使用XPath的优点与在数据库中使用SQL很相似。要从数据库中取得信息,就要首先编写SQL语句表示需要查询什么信息,然后提交给DBMS去执行,查询分析器将返回取得的查询结果,你不必知道也不用关心DBMS具体是如何查询信息的,同样,在XML中,只要编写一个XPath表达式来表示需要信息的位置路径,Xpath引擎会到XML文档中取得该信息,你也不用关心XPath搜索XML文档的算法。第四章 基于XML技术的Web信息抽取的实现在第三章中,本文阐述了基于XML技术的Web信息抽取的总体思想,并给出了Web信息的抽取流程,本章将详细阐述如何实现基于XML技术的Web信息抽取。4.1 Web文档的预处理在上一章中,已经提到了由HTML文档通过解析得到DOM模型,再在DOM模型的基础上转换为形式上的XML文档是一个预处理过程,不管是对样本网页进行抽取规则的生成,还是用已有的抽取规则对与样本网页同类型的一组网页进行信息抽取,都必须对数据源进行预处理。4.1.1 将HTML文档解析为DOM模型将HTML文档解析为DOM模型的实质是将HTML源文件由流式模型转换为DOM这种树结构模型的过程。通常流式模型用于文件的保存和网络的传输,而在本文中,为了信息抽取的需要,必须把HTML文档解析为DOM模型。在这一步中,首先要获取网页,网页的获取主要是通过HTTP协议向服务器端发出请求,经过服务器响应后,取得返回的响应流。由于不同网页使用的编码可能不同,例如可能为gb2312,也可能为utf-8或big5,需要能分辨出不同的编码方式,区别对待,以不正确的编码获取页面,会得到乱码,这就无法得到有意义的网页信息内容,从而造成Web信息抽取等后续步骤的失败。对于网页编码的识别通常可通过HTTP应答头部信息来获得。在HTTP协议中,服务器端经过响应后,返回的HTTP应答头部由一些名称值对组成,通常都包含服务器使用的HTTP版本、Server名称、Date、Content-Length、Content-Type等信息,而其本身不用考虑编码问题(因为HTTP请求或应答头必须是ASCII格式),在这些应答头部信息中,Content-Type值中可能包含了对网页编码的说明信息:charset。但是并不是能从所有HTTP应答头中获取网页编码信息,当这种方法不能奏效时,另一个可行办法是从网页的HTML代码中的标记中获取网页的编码信息,如,可通过content属性中的charset来获得。当上述两种方式都不能获得网页编码信息时,浏览器通过调用自身的自动判别算法来判断网页的编码。4.1.2 将HTML文档转换为形式上的XML文档由于HTML简单易学,浏览器的广泛支持,目前XML还不能完全取代HTML的地位,为了利用XML技术抽取Web信息,必须把HTML文档转化为形式上的XML文档。在现实中,由于HTML语法的不严格性,大量的HTML文档存在以下问题:l HTML文档中的标记大小写不统一,网页中有的标记用大写,有的用小写,甚至有的网页的单个标记也是大小写混合,如出现、等。l 对于像段落标记这种不强制要求闭合的,很多网页没有闭标记。对于空标记即不包含内容的标记,如换行标记,没有用空格加“/”进行关闭。l 此外,有些网页还存在闭标记缺失,属性值没加双引号,标记层叠等问题。正因为如此,现实中的HTML文档的结构不是良构的(well-formed),因此需要对HTML文档进行转换。从HTML文档到XML文档的转换主要做以下工作: 为XML对标记的大小写是敏感的,所以对所有标记名必须统一大小写,比如统一转换为大写。 对于每一个标记属性的值,如果没有用双引号括起来,添加双引号,如HEIGHT=15就要改为HEIGHT=“15”。 为了得到良构的文档,还必须:1对于每一个打开标记检查是否有关闭标记与之配对,若没有,必须添加关标记,如This is aparagraph就要添加标记;2对于不成对的空标记,必须以空格后跟“”结束,如换行标记就要改为。 XML要求标记必须严格嵌套,不允许层叠,如标记内容必须修改为标记内容。从HTML文档转换为形式上的XML文档主要是从语法上对HTML进行修正,使其在语法上符合XML的标准。本文解决HTML文档向XML文档转换的方法是把通过利用微软IE浏览器内核扩展的DOM模型解析得到的HTML文档对象作为输入,以DOM模型为中介,通过遍历HTML文档对象,将遍历得到的元素节点和属性节点及文本节点插入到一个空XML DOM模型的相应位置上,同步生成XML的DOM解析树,通过这种边遍历边创建的方式,实现了HTML向XML的转换。在整个Web文档的预处理过程中,本文使用了基于微软IE浏览器内核扩展的DOM模型对HTML文档解析,因为IE内核扩展的DOM模型能最大限度的包容现实中不规范编写的HTML,这样做的最大好处是:能对现实中各种有语法错误的HTML文档进行解析,如闭标记的遗漏,多余的闭标记,属性值没加引号,非强制要求关闭的标记没被关闭,标记的重叠等,另一个好处是:其解析器内部忽略了标记名的大小写,统一用大写表示,这样在转换为XML文档的过程中,就不用考虑大小写的统一问题。通过遍历解析后的HTMLDOM树,把遍历得到的各种元素、属性、文本节点用XMLDOM API创建为对应的XML DOM节点,从而得到语法正确,结构良好的XML文档。由于转换后的XML文档是用于信息抽取,在转换过程中对原HTML文档中的注释节点不转换,同时对于多余的闭标记(如:没有开始标记匹配的闭标记,基于IE内核的DOM会将其解析成标记名为“/b”的元素节点不进行转换。4.2 抽取规则在第二章中已经提到,Web信息抽取的核心是抽取规则,利用样本页生成的抽取规则才能对该样本页和与该样本页相同类型的一组Web页进行信息抽取。4.2.1 抽取规则的设计本文Web信息抽取系统的抽取规则主要是基于数据密集型网页的特点来设计的,本小节将通过分析一个实际数据密集型网页的特点来说明抽取规则的设计思想。数据密集型(datarich)网页,它是Web信息最重要的来源,特别是信息集成的重要数据源。该类网页通常包含一个主体信息区,主体信息区中有多个局部信息块,且每个局部信息块中都包含多个数据项。目前,现实中的很多数据密集型网页都具有上文分析的示例Web页面的特点,即各个局部信息块内的数据项具有代码结构重复性,在布局上,各个局部信息块集中在一起,共同拥有一个父元素节点,形成主体信息区。这类Web页之所以拥有上述特点,是因为它们一般都是采用一个统一风格的HTML模板和后端数据库进行驱动生成的。为此,本文对这类Web页进行信息抽取的思想是:把这种Web页面中的主体信息区域抽象地看待成行列式(二维表)的形式,即把每个局部信息块看成一行,把每个局部信息块中的各个待抽取的数据项看成各个列(如本节示例中,书籍名、作者、出版社各为一列),相应地把抽取规则表示为基于行和列的XPath位置路径表达式,用它们分别去定位局部信息块和块内的各个数据项,从而来实现Web信息的抽取。在本文中,最终用XML文件来保存抽取规则。4.2.2 抽取规则的生成要生成抽取规则,就是要得到对应于待抽取信息的行和相关列的XPath位置路径表达式。那么如何得到行和列的XPath位置路径表达式?如果通过分析一个HTML文件的源代码来确定这些位置路径,显然是十分困难的,因为面对庞大的源代码,这样做将非常耗时耗力,显然是不可行的。可行的办法是将预处理后的Web文档的DOM树进行可视化,通过在DOM树中选取要抽取的信息的节点来计算出该节点的XPath位置路径表达式,但在DOM树中选取待抽取信息的节点也是比较麻烦且费时的,因为你事先不知道待抽取信息位于DOM树中的哪个节点,因此要解决这个问题,必须把显示在网页中的待抽取信息映射到DOM树中的相应节点从而来获得对应节点的XPath位置路径表达式。通过与用户交互的方式,把用户在系统内嵌的浏览器中选择的区域映射到DOM的可视化树中的相应节点。其实现的过程可描述为:1首先根据预处理后的XML文档在树结构控件中生成一棵与其对应的DOM树,并预先计算好各树节点的XPath位置路径表达式,并把该节点对象以它的XPath位置路径表达式作为索引键值,存入哈希表中。2用户通过鼠标移动到相应的局部信息块或信息块中的数据项,通过计算鼠标的位置,对相应区域进行高亮显示,用户通过鼠标选中相应区域,系统通过鼠标位置计算该区域对应的HTML文档的元素节点,根据此元素节点,自底向上计算该节点的XPath位置路径表达式,根据该表达式查询哈希表,得到相应的树节点,设置该树节点在树控件中被选中。在浏览器中,浏览器根据网页中各HTML标记的含义、各个标记的外观属性和标记包含文字的字体、大小、数量,能够对每一个HTML元素的显示区域进行精确定位,且在浏览器中每一个HTML元素所包含内容的区域都被解析为一个矩形。4.3 信息抽取在生成了信息抽取规则后,就可以利用抽取规则中的行和列的XPath位置路径表达式来进行信息抽取。由于已经在预处理过程中,将HTML文档转换为XML文档,那么信息抽取的问题就等价于从转换后的XML文档中根据XPath位置路径表达式定位到XML文档中的相应节点,抽取其中的信息,再次转换为一个新的只包含需要信息的XML文档。在XML技术家族中,XSLT是一个专门用于从一个XML文档向另一个XML文档转换的技术,XSLT是XSL (eXtensible Stylesheet Language,扩展样式表语言)的一部分,XSLT就是利用xsl文件,将源XML文档转换为一个有样式信息的结果文档。那么,使用XSLT进行转换就可以实现信息的抽取。4.4 附加语义Web信息抽取的目标是从缺乏语义信息的HTML文档中,抽取出用户感兴趣的信息,并将其转化为更为结构化,语义更为清晰的格式。现实中很多网页由于是呈现给人浏览的,很多信息并不需要给出语义,人能够很好的理解,如本章示例网页中的各个书籍信息,并不需要对每本书名指出这是一个书名。但是要将抽取出的信息用于其他数据处理时,就必须对抽取的信息附加语义,使机器能够理解。本章421节已经定义了语义模式,附加语义就是把语义模式和抽取的信息关联起来。由于Web信息抽取的结果用XML来保存,而XML的一大特点就是数据的自描述性,那么对于抽取结果附加语义就相当于在XML文档中把相关数据的语义作为描述该数据的标记。4.5 抽取规则的优化所谓抽取规则的优化问题即是如何制定更加健壮的抽取规则,使得该抽取规则能够更加精确、全面地抽取信息,且能应对Web信息源发生的某些变化。目前,在信息集成领域和数据管理领域都有很多学者研究如何评价信息源的质量,如文献150研究了如何评价和选择Web信息源来集成信息,并提出了评价Web源好坏的方法。对于Web信息抽取,当然也要优先选择好的Web信息来源,因为好的信息源中的Web页面结构稳定,包含的数据质量高,例如要抽取书籍信息,卓越亚马逊就比小网站好。但现实中,不可避免的会出现待抽取的信息源的网页结构发生变化的情况,如网站进行改版,这时用原有的抽取规则对Web页面进行抽取就可能会失败,因为抽取规则中的行和列XPath位置路径表达式是基于HTML文档结构的,当网页结构发生变化,原有抽取规则就失效了。当抽取规则失效后,简单的办法是再一次利用Web信息抽取系统生成针对该Web源的抽取规则,虽然这样做并不麻烦,但如果能制定更为健壮的抽取规则使其能适应网页的某种变化,那将是更好的解决方法。由于抽取规则的实质是对待抽取信息的定位,那么抽取规则的优化的主要工作就是对信息定位的优化,具体来说就是对XPath位置路径表达式进行优化。通常数据密集型网页进行改版后,局部信息块的位置可能发生变化,而块内数据项由于是数据库自动生成的,相对与局部信息块的位置通常是不变的。所以对抽取规则的优化主要是对定位局部信息块的行XPath位置路径表达式进

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论