首页> 中国专利> 一种基于不完全子树匹配的Web数据记录提取方法

一种基于不完全子树匹配的Web数据记录提取方法

摘要

本发明公开了一种基于不完全子树匹配的Web数据记录提取方法,包括如下步骤:根据HTTP协议下载网页的HTML源代码,并将下载的字符以统一的UNICODE进行编码;过滤噪声标记信息;利用NEKO或者HTMLParser之类的组件对HTML源代码进行解析,构造网页的Document树;候选子树集抽取;不完全子树匹配;数据记录集确定。本发明具基于子树的匹配,不依赖于网页的模板结构所以方法具有很高的通用性;通过标签过滤和候选子树集的确定,可以有效提高数据抽取过程的性能;基于截取的不完全子树匹配方法判断子树结构之间的相似性,可以有效地消除数据对模板进行填充后导致的结构性差异,提高数据记录提取的精度的优点。

著录项

  • 公开/公告号CN102937958A

    专利类型发明专利

  • 公开/公告日2013-02-20

    原文格式PDF

  • 申请/专利权人 厦门市美亚柏科信息股份有限公司;

    申请/专利号CN201210277173.9

  • 发明设计人 胡海斌;王慧昌;

    申请日2012-08-06

  • 分类号G06F17/30;G06F9/44;

  • 代理机构北京恒都律师事务所;

  • 代理人安筱琼

  • 地址 361008 福建省厦门市软件园二期观日路12号102-402单元

  • 入库时间 2024-02-19 16:40:09

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-03-17

    专利实施许可合同备案的生效 IPC(主分类):G06F17/30 专利申请号:2012102771739 专利号:ZL2012102771739 合同备案号:X2023350000038 让与人:厦门市美亚柏科信息股份有限公司 受让人:小马宝莉(厦门)网络科技有限公司 发明名称:一种基于不完全子树匹配的Web数据记录提取方法 申请日:20120806 申请公布日:20130220 授权公告日:20160316 许可种类:普通许可 备案日期:20230301

    专利实施许可合同备案的生效、变更及注销

  • 2016-03-16

    授权

    授权

  • 2013-03-27

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20120806

    实质审查的生效

  • 2013-02-20

    公开

    公开

说明书

技术领域

本发明涉及一种基于不完全子树匹配的Web数据记录提取方法。

背景技术

随着互联网的高速发展,Web技术的不断改进,越来越多的机构和个人将信 息发放到互联网。每天,互联网上都有成千上万的网页被生成,互联网已经成 为了一个巨大的信息共享的“图书库”。如何从海量的Web信息中寻找、提取 有效的数据信息成为了一个重要的课题。

HTML网页是互联网的一种最重要的数据格式,它是一个标签语言,在结合脚 本、样式后,由浏览器进行显示。HTML本质是一种半结构化的语言,它适合被 渲染后由人类进行浏览,但是却不利于由计算机程序对数据进行识别和抽取。 在HTML标签的定义中,是没有语义方面的定义的,内容的展现组合很多,导致 程序无法根据标签来判断某个标签的区域是数据区域、广告区域、还是版权声 明区域等其他区域。如果过滤HTML网页中的噪声信息,获取所需的数据区域记 录已经形成了一门研究课程。

Web信息的自动抽取,已有不少研究:

1.基于统计的方法

这种方法是针对新闻、博客等网页的正文提取类任务,有通过DOM树中的特 定节点(Table、Div,P)等进行处理来得到网页有用信息,如:《基于统计的 网页正文信息抽取方法的研究》中认为网页的正文信息一般存在于一个Table 节点中,通过统计节点中文文字的信息得到特定的Table节点,提取其中的文 字得到网页的有用正文。此类研究还有《基于标记窗的网页正文信息提取方法》 等。

2.基于规则训练的抽取方法

此类方法是希望通过机器学习的方法获取数据抽取的规则,方法的步骤一般 是要先标注训练集的网页的数据区域,由程序区自动的“学习”,在需要的情 况下加以辅助的启发式规则,在实际的应用中应用训练出来的抽取器来提取新 出现的网页的数据记录。

3.基于人工的特定网站的数据记录提取

此类方式一般是通过组件(比如标签解析器或者DOM树)解析HTML网页, 然后编写专门的程序从特点的标签中抽取所需数据记录。

对Web网页的类型进行粗分大体上有三种:首页类型的链接列表网页,商品 搜索结果类型的数据记录类型和新闻类型的正文类型网页。以上的研究对于不 同类型的网页数据抽取都可能发挥其效果,比如对于新闻类的网站,基于统计 的方法可能奏效;人工的方法对于特定的网站提取效果在精确度上优于任何自 动的方法;基于规则的方法在具有大规模的训练集的前提下,提取数据的效果 也不错。

本文针对的是商品搜索结果类型的数据记录提取,此类的网页一般包含较 多的数据记录,典型的数据记录如:淘宝的商品搜索结果页面,论坛的帖子列 表和回复列表页面,微博的页面等。典型页面数据记录区块如图4所示。

针对此类型的页面基于统计的方法已经不适用,因为统计的方法一般要利 用较长文字的统计信息,而数据记录类型的网页不满足这一特点。基于规则的 方法需要训练的数据集大,人工标注网页是一个相当耗费人力的过程,而且规 则一般适用一个网站,对于多个网站的数据抽取要得到一个通用的,精确率高 的规则是不现实的。当下,采用较多的方法是人工编写程序的方法,这种方法 精确度较高,但是它的突出缺点是耗费人力比较大而且维护困难。针对每一个 网站都必须编写相对应的抽取代码,在目标网站改版的情况下,程序失效不易 察觉,察觉后还是需要更改代码。

发明内容

本发明所要解决的技术问题是提供一种基于不完全子树匹配的Web数据记 录提取方法。

本发明是通过以下技术方案来实现的:一种基于不完全子树匹配的Web数据 记录提取方法,包括如下步骤:

a.根据HTTP协议下载网页的HTML源代码,并将下载的字符以统一的 UNICODE进行编码;

b.过滤噪声标记信息;

c.利用NEKO或者HTMLParser之类的组件对HTML源代码进行解析,构造 网页的Document树;

d.候选子树集抽取;

e.不完全子树匹配;

f.数据记录集确定;

作为优选,所述噪声标记信息包括JavaScript脚本、CSS样式表、注释说 明、部分无用标签和空内容标签。

作为优选,所述数据记录集的个数大于1,则还需要进行数据记录集的确定。

本发明的有益效果是:1.基于子树的匹配,不依赖于网页的模板结构所以 方法具有很高的通用性;

2.通过标签过滤和候选子树集的确定,可以有效提高数据抽取过程的性能;

3.基于截取的不完全子树匹配方法判断子树结构之间的相似性,可以有效 地消除数据对模板进行填充后导致的结构性差异,提高数据记录提取的精。

附图说明

为了易于说明,本发明由下述的具体实施例及附图作以详细描述。

图1为本发明的基于不完全子树匹配的Web数据记录提取方法的流程方框 图;

图2为本发明的基于不完全子树匹配的Web数据记录提取方法的不完全子 树示意图;

图3为本发明的基于不完全子树匹配的Web数据记录提取方法的树映射示 意图;

图4为典型页面数据记录区块的示意图。

具体实施方式

如图1所示,本发明的一种基于不完全子树匹配的Web数据记录提取方法, 包括如下步骤:

a.根据HTTP协议下载网页的HTML源代码,并将下载的字符以统一的 UNICODE进行编码;

b.过滤噪声标记信息;

c.利用NEKO或者HTMLParser之类的组件对HTML源代码进行解析,构造 网页的Document树;

d.候选子树集抽取;

e.不完全子树匹配;

f.数据记录集确定;

噪声标记信息包括JavaScript脚本、CSS样式表、注释说明、部分无用标 签和空内容标签,过滤这些噪声信息可以防止噪声标签对分析造成影响,并加 快方法的处理速度。

候选子树集的子树拥有共同的父节点,但不一定是兄弟节点、子树的根节 点拥有共同的标签符号,在严格定义的情况下标签的属性必须相同、子树的节 点数目必须大于一定阀值;候选子树集的抽取过程是为了抽取可能的数据记录 集合,并且这个过程也可以对后续的过程减轻工作量。

确定多个候选子树集合的情况下,后续的步骤是进行候选数据记录集合的 判定。候选数据记录集合是候选子树集合的子集。如果候选子树记录集合中的 子树结构相似,则该集合为候选数据记录集合。

判断子树结构相似,我们采用的是不完全的子树匹配,算法采用的是简单 树匹配算法;

如图2所示,不完全子树是指:在子树具有多层级的情况下,抽取根节点 的最项几层的节点,去除了叶节点等底层节点,所构成另一个不完全的子树; 采用不完全子树进行匹配的原因是:数据记录是对模板的数据填充,叶节点等 底层节点可能被数据影响(比如关键字高亮,用户自定义标签)导致节点的结 构不匹配;

为了更好介绍算法,此处给出树映射的定义:

假设T为一棵树,则V(T)表示树T的节点集合。令A,B为两棵树, 对于(va2,vb2)∈M,如果满足下面3个条件,则称 M为A到B的一个映射;

(1)va1=vb1→va2=vb2

(2)va1Ancestor(va2)vb1Ancestor(vb2),Ancestor(v)为v的祖先节 点集合;

(3)Left(v)为v的左边兄弟的节点集合;

如图3所示,条件(1)保证了一对一关系;条件(2)保证祖先关系;条件(3) 保证兄弟关系。若映射M满足条件:存在(parent(va), parent(vb))∈M,其中va,vb是非根节点,则称映射M为A,B的一个匹配。具有 最多有序对数目的匹配称为树A,B的最大匹配,记作MaxMatch(A,B)。简单树匹 配算法利用动态规划的思想,寻找A,B的最大匹配。算法如下:

该算法的复杂度为O(n1n2),其中,n1,n2分别为A,B的节点个数,在节点 数目较多的情况下复杂度比较高,前面步骤的标签过滤和不完全子树的截取和 候选子树集的抽取可以有效降低步骤e的工作量。

经过步骤e,可以确定大多数的数据记录集,当数据记录集的个数大于1, 则还需要进行数据记录集的确定;确定的方式方法用启发式的规则:数据记录 集的数据记录条数较多;数据记录集的标签内含有文字长度长的节点,对于中 文网页,含有中文的文字字符数多;数据记录集记录的树的节点数较多;通过 规则的判断可以有效确定数据记录的集合。

本发明的有益效果是:

1.基于子树的匹配,不依赖于网页的模板结构所以方法具有很高的通用性;

2.通过标签过滤和候选子树集的确定,可以有效提高数据抽取过程的性能;

3.基于截取的不完全子树匹配方法判断子树结构之间的相似性,可以有效 地消除数据对模板进行填充后导致的结构性差异,提高数据记录提取的精。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于 此,任何不经过创造性劳动想到的变化或替换,都应涵盖在本发明的保护范围 之内。因此,本发明的保护范围应该以权利要求书所限定的保护范围为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号