基于DOM的Web数据抽取研究 下载本文

内容发布更新时间 : 2024/5/19 5:39:30星期一 下面是文章的全部内容请认真阅读。

龙源期刊网 http://www.qikan.com.cn

基于DOM的Web数据抽取研究

作者:郭东峰

来源:《科技创新与应用》2013年第18期

摘 要:文章阐述了利用XML中的DOM树将Web数据结构分析,转化为结构化的XML数据,使用Xpath实现数据匹配查找数据,通过正则表达式实现数据抽取。同时,对目前数据抽取技术做一些简单探讨研究。

关键词:数据抽取;XML数据;DOM树 引言

随着Internet的快速发展,Web上的数据信息急剧增加,成为了世界上规模最大的公共数据资源。目前虽然搜索引擎为用户查找信息提供了简便的方法,但它只是提高了Web文档的检索效率,只能根据用户提交的关键词返回一组网址,用户必须逐一浏览网址对应的Web页,采用人工的方式定位最终信息,现有的搜索引擎本身不能直接定位到所需的数据,更谈不上为数据增加语义。XML技术出现之后,因为其定义严格,语法明确,结构良好,已经迅速成为互联网信息表示的事实标准,通过把HTML文档转换成XHTML,借助于DOM分析技术,可以方便从中提取有用信息。 1 WEB数据抽取

Web信息抽取是一种从Web文档中抽取出有用信息的技术,可以大大的缩短了对资料的整理时间,为信息检索提供方便,有利于现实文档的存档管理。我们可以利用行业信息模型和领域特征做主题搜索,在收集信息时去除领域无关的信息,在信息检索时实现更优秀的查询扩展,从而提高搜索结果的查全率和查准率,有效解决通用搜索系统给出的检索结果往往过于繁杂,用户甄别信息价值的时间长问题。主题搜索利用逐渐成熟的文本分类技术,去除用户不关心数据,具有更多的针对性,减少搜索、浏览时间中的比重,使其满足人们对信息的精准化需求,提高工作效率。 2 信息抽取方法发展情况

2.1 手工方法:通过观察网页及其源代码,由编程人员找出一些模式,再根据这些模式编写程序抽取目标数据。然而这种方式无法抽取站点数量巨大的形式。手工方法由于设计难度大,只能针对少量网页抽取,目前基本不再使用。

2.2 包装器归纳:即有监督学习方法,是半自动的。从手工标注的网页或数据记录集中利用机器学习方法序列覆盖学习一组抽取规则。随后这些归则即被用于从具有类似格式的网页中抽取目标数据项。由于需要手工标注的工作,不适合对大量站点抽取,并且维护开销大。

龙源期刊网 http://www.qikan.com.cn

2.3 自动抽取:即无监督学习方法,给定一张或数张网页,这种方法自动从中寻找模式或语法,以便进行数据抽取。自动化抽取的主要优点是它能处理大量站点的情况,并且维护开销小,主要缺点是因为系统不知道用户对什么感兴趣,它可能抽取了大量不需要的数据。 3 DOM树的解析、扩展和Xpath使用

文件对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展置标语言的标准编程接口。DOM可以先将XML文档解析成结点对象以元素、属性、实体和注释等节点形式存放信息的树形分级结构,然后以节点树的形式在内存中,由于树形数据结构应用较为广泛,有很多成熟的算法可以用来遍历、搜索、编辑XML文档树,同时借助于JDOM、DOM4J、SAX等技术类库可以更加方便的访问分档中的数据。

XPath是一种用于查询XML文档中的信息的语言,是定位XML文档节点的声明式语言,是W3CXSLT标准的主要组成部分。Xpath规范定义了允许到XML文档各个部分的路径说明的表达式语法和支持这些表达式的核心库基本函数。主要用于识别、选择和匹配XML 文档中的各个组成部分, 包括元素、属性和文本内容等。XPath可以使用路径表达式方便地定位XML节点,所以很适合于数据抽取。 4 Web信息抽取的概念及实现流程

Web 信息抽取就是从Web页面中抽取目标信息的问题,从网页中所包含的无结构或半结构的信息中识别用户感兴趣的数据,并将其转化为结构和语义更为清晰的格式( XML、关系数据、面向对象的数据等)。基于XML技术抽取的流程为:首先,从网络中获取HTML文档;然后,经Tidy等工具处理后转换为符合XML格式的XHTML文档,再使用XSL保存的数据抽取规则,经XSLT处理抽取出XML,中对原始的HTML文件加工清洗,经过使用工具Tity对网页语法检查及纠错,将HTML文档转换为结构完整的XHTML;第三,使用HTMLParser等工具解析XML文档生成DOM树模式;最后,利用Xpath和正则表达式信息抽取规则提取有价值的信息存储到数据库中以便使用。 5 DOM子树最大匹配求方法

设有两棵树T1=RA:和T2=RB:,RA,RB分别为两棵树的根,Ai和Bj分别是T1的第i个和T2的第j个第一层子树。设 M(T1,T2)为求T1,T2最大匹配的节点个数。当RA和RB相同时,即两棵树的根部相同,T1和T2的最大匹配就是M(T1,T2)=M(,)+1, 否则M(T1,T2)=0。其中有递推公式:M(,)=max(m(,)+M(Ak,Bn), m(,), m(,)),M(,)=0,M(s,)=M(,S)=0;计算出DOM结点的最大匹配值,就可以通过选择合适的阀值,找出具有相同结构模式的DOM子树,这些子树一般为网页表格中的行…或列表项 …

就是需要集中抽取的数据区域。

龙源期刊网 http://www.qikan.com.cn

6 结束语

Web数据抽取技术目前还处在不断发展之中,是Web数据挖掘研究领域中的难题和热点。本文论述了基于DOM技术查找网页中的数据区域方法,维护开销小,具有很强的实用价值。值得注意的是还存在着改进的地方,比如抽取了一部分用户不感兴趣的数据,这可以尝试使用领域分词过滤掉不需要的信息加以完善。 参考文献

[1]蔚晓娟.基于DOM的XML解析与应用[J].计算机技术与发展, 2007.17(4). [2]李雪竹.一种基于XML的Web数据抽取的实现[J].科学技术与工程,2008(9). [3]尹津其.基于WEB的数据抽取及应用实例[J].中国新技术新产品,2009(19).