CN104408101A - 一种全程化Web信息抽取集成方法 - Google Patents
一种全程化Web信息抽取集成方法 Download PDFInfo
- Publication number
- CN104408101A CN104408101A CN201410663862.2A CN201410663862A CN104408101A CN 104408101 A CN104408101 A CN 104408101A CN 201410663862 A CN201410663862 A CN 201410663862A CN 104408101 A CN104408101 A CN 104408101A
- Authority
- CN
- China
- Prior art keywords
- data
- web
- record
- page
- navigation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000000605 extraction Methods 0.000 title claims abstract description 38
- 230000010354 integration Effects 0.000 title claims abstract description 31
- 238000013075 data extraction Methods 0.000 claims abstract description 17
- 239000000284 extract Substances 0.000 claims description 51
- 230000008569 process Effects 0.000 claims description 41
- 238000013459 approach Methods 0.000 claims description 19
- 230000002452 interceptive effect Effects 0.000 claims description 14
- 238000012545 processing Methods 0.000 abstract description 14
- 238000004458 analytical method Methods 0.000 abstract description 8
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000005065 mining Methods 0.000 abstract description 2
- 230000009471 action Effects 0.000 description 14
- 238000006243 chemical reaction Methods 0.000 description 13
- 238000005194 fractionation Methods 0.000 description 9
- 238000013461 design Methods 0.000 description 8
- 230000009466 transformation Effects 0.000 description 5
- 238000001914 filtration Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 101000911390 Homo sapiens Coagulation factor VIII Proteins 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 102000057593 human F8 Human genes 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 229940047431 recombinate Drugs 0.000 description 2
- 238000005215 recombination Methods 0.000 description 2
- 230000006798 recombination Effects 0.000 description 2
- XILIYVSXLSWUAI-UHFFFAOYSA-N 2-(diethylamino)ethyl n'-phenylcarbamimidothioate;dihydrobromide Chemical compound Br.Br.CCN(CC)CCSC(N)=NC1=CC=CC=C1 XILIYVSXLSWUAI-UHFFFAOYSA-N 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000011068 loading method Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000013011 mating Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000008521 reorganization Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000013517 stratification Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种Web信息抽取集成方法,属于计算机技术领域。该方法包括网页浏览导航、网页数据抽取、数据集成处理步骤,能够应用于各种不同的Web信息采集和挖掘分析应用,具有网页自动浏览导航能力和抽取数据的集成处理能力,因此采用本发明后,可以满足人们从Web中挖掘有价值的数据信息、完成深度价值发现的愿望。
Description
技术领域
本发明涉及一种信息抽取集成方法,尤其是一种Web信息抽取集成方法,属于计算机技术领域。
背景技术
Web是目前最大的信息发布和共享平台,其中包含了大量有价值的数据信息。越来越多的应用希望能从Web上获得这些有价值的数据信息,进一步完成深度的数据信息分析,提供各种数据分析增值服务。
然而,如何能从Web网页上精确地获取所感兴趣的数据信息是一个较大的技术难题。Web信息抽取(Web Inform全程化Web信息抽取集成方法tion Extr全程化Web信息抽取集成方法ction)是研究解决相关技术和工具的新兴研究领域。所谓Web信息抽取是指从结构化或半结构化的网页上抽取出用户或应用所感兴趣的数据,将其以结构化的格式导入数据库中供进一步分析处理的过程。
据申请人了解,在过去的十多年中,Web信息抽取技术已出现了一些系统,例如DEPT全程化WEB信息抽取集成方法、ViDE、MDR,ST全程化WEB信息抽取集成方法LKER,Lixto,DEByE等。但现有的Web信息抽取研究和系统基本上都仅仅集中对已获取网页的数据抽取处理,而忽略了实际的Web信息抽取处理过程首先需要考虑的网页自动浏览导航和访问问题,而且对抽取出的原始网页数据的转换和集成处理也缺少充分的考虑。这些仅仅关注了中间的网页数据抽取处理阶段的现有技术离实际的Web信息抽取应用需求还有很大的距离。
发明内容
本发明的目的在于:针对上述现有技术(研究和系统)存在的不足,提出一种包含Web网页自动浏览、网页数据抽取、以及数据集成全程化Web信息抽取集成方法,进而基于相应的模型研究设计网页自动浏览导航、网页数据抽取与集成、以及Web信息抽取流程控制技术和相应的规则语言。
研究表明,完整的Web信息抽取处理过程包含三个阶段:1)网页浏览导航, 即系统需要能在Web信息抽取处理过程中模拟用户浏览网页的行为自动导航和访问到所感兴趣的网页;2)网页数据抽取,对于所访问获取的网页,定制一定的抽取规则完成网页数据元素的抽取处理;3)数据集成,即对于抽取出的原始网页数据元素进行转换、过滤和集成后处理。在实际的Web信息抽取处理过程中,一个重要问题是如何能让系统模仿人的浏览导航行为,自动浏览并访问到所感兴趣的网页。获得所需网页后,主要技术问题则是如何有效地在网页上指定和描述所要抽取的具体数据元素或数据记录。为此,需要引入网页数据抽取规则。另外,网页上所抽取出来的原始数据元素和记录通常是没有结构语义的,至多反应的是一种网页展现结构语义,这种网页展现结构语义与Web抽取应用所需要的目标结构语义之间存在一个差异和鸿沟;为了消除这种差异和鸿沟,Web信息抽取处理必须提供数据转换、过滤、映射和集成处理的能力。更为复杂的情形是,一个复杂数据记录可能会显示在多个关联网页上。因此,进行Web信息抽取时需要自动完成这些关联网页的链接跳转,并且能依据这些数据网页的链接关系保持正确的数据关系,以便最终完成完整数据记录的抽取和集成处理。
为了达到以上目的,本发明的全程化Web信息抽取集成方法包括以下基本步骤:
第一步、网页浏览导航——构建自动记录用户访问网页导航链接一系列交互操作的导航链接模型,同时编制实现回放该一系列交互操作的规则语言,从而实现自动重复对用户访问网页的导航链接,为数据抽取奠定基础;
第二步、网页数据抽取——重复对用户访问网页的导航链接后,根据预定的抽取规则,抽取展示在Web页面上的数据源对象;
第三步、数据集成处理——将抽取出的数据源对象中的数据元素或数据按预定的目标数据结构进行转换、过滤和集成,形成目标数据对象。
本发明技术方案的进一步限定为,第二步中,网页数据抽取时,抽取的数 据源对象为非规整数据和/或规整数据。
进一步地,第二步中,执行网页数据抽取包括如下步骤:首先,抽取展示在Web页面上的数据源对象;然后,将包含在数据源对象中的数据集成到预先定义好的目标数据结构中从而形成目标数据对象。
进一步地,抽取展示在Web页面上的数据源对象时,建立数据源对象模型,包含三种类型的数据源对象:数据区对象、数据记录对象和数据项对象,每个数据区对象包含一个或多个数据记录对象,每个数据记录对象包含一个或多个数据项对象。
进一步地,第二步中,抽取展示在Web页面上的数据源对象时,记录对应页面上用以抽取数据记录的Web数据区和数据源对象、以及用于数据抽取、浏览导航、以及流程控制的HTML控件和各种外部数据源控件;数据源对象采用XML语言进行定义和描述。该数据源对象实际上封装了用以抽取出指定的数据区域中的数据记录的规则,包括各种抽取属性(Attributes)和模式(Patterns)。
进一步地,第三步中,数据集成处理中包含对页面数据源对象中抽取出的原始数据进行转换集成的逻辑和规则,数据集成规则将采用某种脚本语言来描述
本发明设计完成的全过程化Web信息抽取集成方法能够应用于各种不同的Web信息采集和挖掘分析应用,具有网页自动浏览导航能力和抽取数据的集成处理能力,因此采用本发明后,可以满足人们从Web中挖掘有价值的数据信息、完成深度价值发现的愿望。
附图说明
下面结合附图对本发明作进一步的说明。
图1为本发明一个实施例的全程化Web信息抽取集成方法的流程图;
图2为实施例1中的Web数据记录模型;
图3为实施例1中的Web信息抽取集成ETI模型;
图4为实施例1中的页面模型与Web信息抽取集成规则体系模型;
图5为实施例1中包含基于网格的数据记录的Web页面;
图6为实施例1中基于跨页面链接关系的数据记录网页示例;
图7为实施例1中浏览导航规则模型;
图8为实施例1中跨页面嵌套记录的集成规则和集成后的目标数据记录的XML结构;
图9为实施例1中数据抽取和“一对多”集成转换规则示例。
具体实施方式
实施例一
本实施例的全程化Web信息抽取集成方法,包括以下基本步骤:
第一步、网页浏览导航——构建自动记录用户访问网页导航链接一系列交互操作的导航链接模型,同时编制实现回放该一系列交互操作的规则语言,从而实现自动重复对用户访问网页的导航链接,为数据抽取奠定基础;
第二步、网页数据抽取——重复对用户访问网页的导航链接后,根据预定的抽取规则,抽取展示在Web页面上的数据源对象;
第三步、数据集成处理——将抽取出的数据源对象中的数据元素或数据按预定的目标数据结构进行转换、过滤和集成,形成目标数据对象。
下面对三个基本步骤做详细的介绍。
1、全过程Web信息抽取模型
三阶段Web信息抽取集成模型
从信息处理的抽象层面看,如图1所示,一个完整的Web信息抽取过程应当包括网页获取(即自动浏览导航)、网页数据抽取处理(包括自动或半自动分析方法以及手工交互生成抽取规则)、以及集成后处理三个主要阶段。
(1)网页浏览导航阶段:一个完整的Web信息抽取系统首先需要提供这种网页自动浏览导航能力,即在Web信息抽取过程中能模仿用户在浏览器中人工的网页交互和浏览导航动作,以便系统自动访问和获取所需要的网页。为此,需要抽象并提供一种用户网页交互和浏览导航模型,并最终提供一种网页交互动作和浏览导航规则语言以描述和刻画出这种网页交互和浏览导航动作,然后在Web信息抽取处理过程中,执行该规则语言,以便回放所描述的网页交互和浏览导航动作,完成网页的自动访问和获取。
(2)网页数据抽取阶段:获得数据网页后,需要为每个数据网页定制数据抽取规则,以便从网页上抽取出特定区域中所包含的特定数据元素或数据记录;对包含规整数据记录的页面可采用自动结构分析方法生成抽取规则,对非规整页面可采用基于交互的半自动化规则生成方法完成。
(3)数据集成处理阶段:抽取出来的网页数据元素或数据记录需要按照所定义的目标信息实体结构进行转换、过滤和集成处理,生成一组目标数据记录。为此需要提供有效的数据集成模型和数据转换规则语言以便用户刻画出各种数据转换和集成逻辑。
因此,一个完整的Web信息抽取系统必须基于以上的三阶段完整模型来设计整个系统,提供从网页自动获取、到网页数据抽取和集成处理的综合规则体系和规则语言,并最终得到完整和一体化的执行和处理。
网页交互和浏览导航模型
Web页面的复杂性、交互性和数据动态性通常使得难以通过简单的URL链接来获取Web页面。因此,为了刻画Web信息抽取过程中的网页自动浏览导航逻辑,我们首先需要对用户在浏览器中以人工方式进行网页交互和浏览导航的行为动作进行抽象,然后建立一个网页自动交互和浏览导航的抽象模型,并进一步定义和提供一种浏览导航规则语言,以描述和刻画出准确的浏览导航逻辑。
为了刻画一个网页间的链接跳转,首先定义一个“导航链接模型”,该模型 主要刻画完成一个导航链接所包含的一系列交互操作,我们将执行Web浏览导航的每个交互动作称为浏览导航动作。
一个导航链接L包含一组浏览导航动作序列(Action Sequence,AS),我们用L(AS)来表示这个导航链接。从抽象层面看,一个完整的Web数据抽取任务将由一系列导航链接组合而成。
每个浏览导航动作实际上就是对一个网页控件进行的某种交互操作,通常包含一个或多个具体的控件设置动作,如设置文本框文本值,选中一个或多个复选按钮等。每个浏览导航动作包括控件描述和定位信息、浏览导航和交互动作描述、以及控件操作参数。一个导航链接可包含一至多个上述的浏览导航动作。除此以外,一个导航链接还指定当跳转到目标页面后所对应的目标页面模型是什么。
Web数据记录与数据源对象模型
Web页面上的数据记录有多种可能的组织形式。根据Web数据记录结构的规整性,我们将Web数据记录分为两类:规整数据记录和非规整数据记录(见图2)。
(1)非规整数据记录
包含在非规整数据记录中的数据项经常随机地分布在web页面上。因此我们通常不能从Web页面上规整的区域抽取出这种记录的数据项。对于此类数据记录,我们需要直接基于用户交互来生成抽取规则。
(2)规整数据记录
规整数据记录通常以规整的形式展示在web页面上。这类数据记录可能有多钟变体。根据不同的展示格式,规整数据记录可以被划分为三类:基于行的数据记录,基于列的数据记录和基于网格的数据记录。
对于基于行的数据记录,其抽象数据结构与其背后的DOM树结构是一致的。这种数据记录的结构最为简单。现有的大多数自动web数据抽取系统能够 自动分析并抽取这种数据记录。基于列的数据记录在其DOM树上将垂直显示。由于每个这样的数据记录由一组位于同一DOM树层次上的非兄弟节点构成,因此增加了自动Web数据抽取系统分析和抽取这种数据记录的难度。基于网格的数据记录是最难被自动分析和抽取的数据记录。一组基于网格的数据记录通常可以被划分为多个子组,每个子组中的数据记录类似于基于列的数据记录。
数据记录形式的多样性为数据抽取规则的统一定义带来了困难。为了提供充足的信息来指导系统正确地识别和抽取规整和非规整数据记录,本发明将引入各种属性和模式来定义抽取规则。
为了执行Web数据抽取,首先,我们将抽取展示在Web页面上的数据源对象;然后,我们将包含在数据源对象中的数据集成到预先定义好的目标数据结构中从而形成目标数据对象。对于第一步,我们引入一个层次化的数据源对象模型。该模型包含三种类型的数据源对象:数据区对象,数据记录对象和数据项对象。每个数据区对象包含一个或多个数据记录对象。每个数据记录对象包含一个或多个数据项对象。根据这一模型,我们将按照自顶向下的方式定义每个层次上的数据对象的抽取规则。
数据集成模型
为了阐述对页面上抽取出的原始数据进行集成处理的思想,本发明借鉴数据仓库中ETL(Extraction,Transformation and Loading)的设计思想来完成Web数据抽取过程中的数据集成处理,将ETL改变为ETI模型,即抽取(Extraction),转换(Transformation)和集成(Integration)处理过程和模型(如图3)。抽取(Extraction)处理主要负责从Web页面中抽取出原始的展示结构意义上的数据记录和元素;然后由于展示结构意义上的数据记录与最终应用所需要的目标结构数据记录间会存在差异,因此,转换(Transformation)处理将负责对这些原始数据记录和元素进行过滤和转换处理;最终,转换出的数据将按照用户预定义的目标数据记录结构,通过集成(Integration)处理合并集成并输出为目标数据记录。为了提供复杂结构目标数据记录对象的描述能力,目标数据记录对象采用基于XML的层次 式模型表示。
1.页面模型与Web信息抽取集成规则体系
为了描述Web信息抽取过程中的浏览导航、数据抽取和数据集成三个部分的逻辑,我们引入一个页面模型(page model)的概念。一个页面模型实际上是与一个特定网页对应的规则容器,包含为该网页所创建的有关浏览导航、数据抽取和数据集成各部分规则描述。每个页面都需要有一个页面模型(如图4),同一类型、但包含不同数据记录的Web页面可用同一个页面模型来描述其所需的导航动作、抽取和集成规则。页面模型主要包括三个部分:
(1)数据源对象及其抽取规则:记录对应页面上用以抽取数据记录的Web数据区和数据源对象、以及用于数据抽取、浏览导航、以及流程控制的HTML控件和各种外部数据源控件;为了保证规则语言的通用性,数据源对象采用XML语言进行定义和描述。该数据源对象实际上封装了一系列用以抽取出指定的数据区域中的数据记录的规则,包括各种抽取属性(Attributes)和模式(Patterns)。
(2)数据集成规则:包含对页面数据源对象中抽取出的原始数据进行转换集成的逻辑和规则;为了提供灵活而强大的数据转换和集成逻辑表示能力,数据集成规则将采用某种脚本语言来描述;
(3)浏览导航规则:如果当前的目标数据对象抽取还涉及到对后续被链接页面上数据的抽取,则当前的页面模型中还需要定义这些后续的浏览导航链接对象和规则;为了保证规则语言的通用性,浏览导航链接对象和规则将基于XML语言进行定义和描述。
2.数据源对象及其抽取规则的设计
数据区对象
为了抽取页面上的数据记录,我们首先定义数据区对象的抽取规则来指定页面上包含一组数据记录的区域。下面的规则示例给出了数据源对象抽取规则的框架描述。该抽取语言采用XML描述。总体上该抽取语言包含三个层次。第一层(对应于标签<DataRegion>)用于定义数据区对象。第二层(对应于标签<Record>)用于定义数据记录对象。第三层(对应于标签<Item>)用于定义数据项对象。
数据抽取属性和模式
为了能有效描述数据区中与数据记录和字段对应的DOM节点特征,需要引入属性(Attributes)和模式(Patterns)。属性用来表示相应的XML元素的一系列属性,如name属性用于指定数据区对象的名称。而模式主要通过一些特征的定义对数据源对象及其内部的数据记录和字段进行定位、划分、过滤等复杂处理,以便能有效抽取各种不同类型的数据记录和数据项。属性locationPatternId,rangePatternId,filterPatternId,splitPatternId分别存储所使用的定位模式、范围模式、过滤模式、重组模式和分割模式。每个模式都有属性标识符id、类型type、以及方法method,不同类型的模式支持不同的方法。
模式的基本语法结构如下:
<Pattern id=”模式标识符”type=“location/range/filter/recombination/split”method=””xpath=“”>
<Feature absentXPath=“”presentXPath=“”/>
……
</Pattern>
其中Feature元素主要用来描述一个显著的DOM节点特征。
定位模式中的属性xpath指定数据区父节点的XPath。为了适应页面结构的变化,该属性通常会指定一个比较泛化的XPath。但由于泛化的XPath可能会定位多个节点,因此我们需要引入一个特征来进一步定位正确的节点。对于任何一个泛化的XPath匹配的节点P,节点<Feature>中的属性absentXPath和presentXPath分别指定了用于正确匹配P节点的XPath。若相对于节点P的absentXPath定位到任何节点,或者相对于节点P的presentXPath定位到至少一个节点,则P节点将作为不正确的节点丢弃。P节点成为正确节点当且仅当P同时满足这两个条件(也称满足该特征)。
范围模式用来定位数据区的边界。如果一个数据区的边界之内还包含噪音节点,我们需要使用过滤模式来过滤掉这些兄弟节点。过滤模式可指定一个或多个特征以完成复杂的过滤逻辑;当一个数据区包含基于网格的数据记录时,我们将使用分割模式来将该数据区分割为多个子区。在分割模式中,属性method指定了数据区分割方法。目前提供四种可选的分割方法:head,tail,separator和order。当选择方法head(tail)时,分割模式将指定一个特征;数据区中任何满足该特征的节点将被识别为一个子区的首(尾)节点。当选择方法separator时,分割模式将指定一组特征;当数据区中的一组连续的节点依次满足分割模式中所指定的特征时,该组节点将被识别为子区之间的分隔符。当选择方法order时,分割模式也将指定一组特征;我们将依据改组特征将数据区将被分割为多个子区;其要求是每个子区中的节点次序遵循分割模式中所指定的特征的次序。
数据记录与字段抽取规则定义
当我们定义好数据区对象的抽取规则后,我们将定义数据记录对象的抽取规则来抽取数据区对象中的数据记录。当数据区对象中包含基于行的数据记录时,我们可以直接将数据区对象分割为多个数据记录。这类似于数据区对象的规则定义中子区的分割。我们将复用前述定义的分割模式来分割数据记录。
当数据区对象中包含基于列(网格)的数据记录时,我们需要对数据区对象(每个子区对象)进行重组,然后再识别重组后的数据区对象(每个子区对象)的数据记录。为此,我们引入重组模式来对数据区对象(子区对象)进行重组。重组模式中的属性id和type与前述模式类似;属性method指定了重组的方法。目前,我们提供两种可选的重组方法:X_coordinate和index。当选择方法X_coordinate时,我们将按照节点的横坐标(下标)来对齐数据记录和字段;当选择方法index时,将按照节点的序号而不是坐标位置来对齐节点。
当我们定义好数据记录对象抽取规则后,我们可以相对于数据记录对象来定义数据项对象抽取规则。我们将直接复用前述的定位模式来定位数据项。
数据源对象和数据记录抽取规则示例
根据前述讨论可知,基于网格的数据记录的规则定义最为复杂。为了比较全面地解释上述规则语言,以下给出一个包含基于网格数据记录的Web页面示例,以此来说明抽取规则的定义。图5显示了一个包含基于网格的记录的Web页面示例。该页面包含4个数据记录;我们感兴趣的数据项是每个记录中的“产品名称”,“市场价”和“销售价”。如下语句给出了相应的数据抽取规则的定义。
1.浏览导航规则
页面模型中的浏览导航链接对象和规则基于XML进行描述。导航链接描述是一系列浏览导航交互动作集合。导航链接描述包含两个分开的部分:一个是导航链接对象<NavLink>的定义,其中包含导航操作控件描述和导航目标页面模型的指定;第二部分是导航链接调用<LinkCall>,其中将指定完成一个所定义的导航链接跳转所需要进行的所有控件交互动作。图7的规则示例中描述了在图6的搜索页面上填写一个搜索关键字、然后按压“搜索”按钮开始跳转到搜索结果页面的导航链接对象和规则示例。其中,<NavLink>定义了两个涉及到的交互控件,一个是搜索输入框searchbox,另一个是搜索按钮searchbutton;然后在Web数据抽取过程中当需要在当前的页面模型中执行这个链接跳转时,则在导航链接调用对象<LinkCall>中执行两个浏览动作,一个是将一个需要搜索的关键字字符串设置到搜索框searchbox中,然后按压搜索按钮searchbutton引起从搜索页面到搜索结果页面的跳转。一个Web网页的页面模型中可以定义多个导 航链接对象NavLink。一个NavLink描述规则的定义如下:
<NavLink id=“…”>……</NavLink>,其中id用来为这个导航链接指定一个标识符。
2.数据集成规则语言设计
基于网页链接的跨页面数据记录集成
在实际的Web信息抽取应用中,一个复杂的目标数据记录可能会分散在多个相关联的网页上,因此,数据记录抽取集成时不仅需要能从这些网页上抽取出离散的数据集合,而且还要维护分散在这些网页上的数据间的正确数据关系,并根据这种数据关系一并完成目标数据记录的集成处理。
然而一个复杂的问题是,根据目标数据记录的结构,来自不同页面上的数据元素之间可能存在多种不同的数据关系。依据多网页间不同的数据关系,本发明提出了一种根据XML元素间自包含的结构关系、同时结合页面间的导航链接来完成复杂数据关系的维护和复杂数据记录的集成处理。主要思路是,根据所维护的上下页间的数据关系,在目标XML的适当的数据元素位置上,插入到下页的导航链接调用。当执行这个导航链接调用得到来自下页的数据后,直接插入该导航链接所对应的XML元素的位置上,以此保证跨页面间复杂的数据记录的集成处理。
经过观察和分析,本发明总结出的跨页面数据关系可以分为以下几种:
(1)平行记录关系,即后一个网页上的数据记录附加到前一个网页的一组记录之后。
(2)平行字段关系,下一页上的数据是当前页上某个记录中的后续字段。
(3)父子字段关系,下一网页上的数据附属于当前网页记录中的某个字段(如details网页上抽取出的一组详细信息数据字段依附于本页上数据记录中的Details字段)。
(4)嵌套记录关系,下一网页上的一组数据记录是当前网页上某个字段下的一组嵌套子记录(如学生信息网页上的“已修课程”字段链接到下一页上的一组详细的已修课程记录)。
图6给出了一个跨网页链接数据记录的网页示例,图8给出了该示例中跨网页目标数据记录的集成规则。图8为多个页面模型中的集成规则,则集成后得到的目标数据记录的XML结构如下所示,
而记录中的数据都分布在图6中的多个页面中。其中图6的记录页面R包含了一组相似的书本数据记录,在每个书本数据记录中又包含一些目标记录<Book>元素下集成所需的一些字段,如“名称”、“价格”、“评论”等。点击“名称”链接后得到的细节页面D包含了嵌套在目标记录<Book>元素下的一些数据字段,如“出版社”、“页数”,这些字段同记录页面R中书本记录的字段为平行字段关系。点击“评论”链接后得到的评论页面C包含一组相似的评论数据记 录,这些记录又被嵌套在目标记录<Book>元素下的<Comments>元素中。因此,R中的记录同C中的记录为嵌套记录关系。为了能按照图8中目标数据记录的结构集成这些跨页面的数据,需在图8中的<Book>以及<comments>元素下分别插入导航链接<LinkCall id=“Detail_Info”>和<LinkCall id=“Comments”>。其次,通过R页面模型中的NextBookPage导航链得到的后续页面中的书籍数据记录之间形成平行的<Book>数据记录关系;某本书的评论网页上通过NextCommentPage导航链得到的<Comment>之间也是平行记录关系。为此,需要在R和C对应的页面模型的相应位置插入导航链接<LinkCall id=“NextBookPage”>和<LinkCall id=“NextCommentPage”>,如图8所示。在运行时,执行导航链接调用得到来自下页的数据后,直接插入该导航链接所对应的XML元素的位置上。以<LinkCall id=“Detail_Info”>为例,在执行该导航链接调用后(即点击“名称”链接)进入细节页面D,根据集成规则对D中字段进行抽取,然后将这些字段元素都插入到<LinkCall id=“Detail_Info”>所对应的XML元素的位置上。
原始数据记录到目标数据记录的转换集成
根据前述的ETI模型,为了完成原始数据记录到目标数据记录的转换集成,需要进行原始记录的字段到目标数据记录字段的映射和转换处理。基本的数据抽取和集成处理思路如下:
(1)源数据抽取与目标数据集成处理相分离,以不同的规则来描述数据抽取处理和数据集成处理逻辑,这样做的优点是:1)有助于源数据对象专注于原始记录和字段的抽取处理,而不必关注集成语义;(2)有利于在集成阶段专注于实现各种复杂的数据过滤、合并等灵活的数据后处理;3)有利于实现原始数据 记录和字段与目标数据记录和字段间可能存在的复杂映射关系处理。
采用脚本语言作为两者间转换映射处理的桥梁,实现集成过程中的灵活强大的转换映射处理逻辑,可实现源数据字段与目标数据字段之间“一对多、多对一和多对多”的复杂数据字段转换和映射处理;这种设计的另一个好处是,可实现多数据源的集成,包括实现多数据源间可能存在的数据连接(join)处理。
图9展示了一个原始数据抽取到目标数据记录的“一对多”转换集成规则的示例,在抽取规则中描述了页面中构成记录的相关字段,其中包括一个以“,”隔开的包含多个作者的authors字段,而假定在目标数据记录中需要把每个作者字段提取出来分开存储,于是可以在集成脚本中运用灵活的流程控制和转换集成脚本实现这种“一对多”的数据转换和集成。而集成规则中元素的内容来源于由抽取规则所描述的源数据记录中所对应的字段。
抽取集成规则语言执行引擎原型系统的设计实现
Web信息抽取系统的规则执行流程和原型系统
基于三阶段模型的Web信息抽取系统的规则执行流程分为两个阶段:1)在生成阶段(building-time),结合自动和交互两种方式来录制用户的浏览导航动作,生成流程控制逻辑以及数据抽取和数据集成规则。对一个Web信息抽取任务,每一个Web页面的操作都需要生成一个页面模型来保存所有的规则;2)在运行阶段(running-time),对于页面模型进行与处理生成对应的预编译文件(.java代码文件),然后编译生成.class可执行文件。当相应的页面模型变化时,需要修改并重新生成相应的预编译文件并再次编译即可。
本发明基于所提出的三阶段模型设计实现的一个Web信息抽取原型系统。它提供了一个可视化的交互界面,可帮助用户完成build-time阶段从浏览导航路径 录制、到抽取集成和流程控制规则生成处理,以及runtime阶段实际的规则执行处理过程。
除上述实施例外,本发明还可以有其他实施方式。凡采用等同替换或等效变换形成的技术方案,均落在本发明要求的保护范围。
Claims (6)
1.一种全程化Web信息抽取集成方法,其特征在于包括以下基本步骤:
第一步、网页浏览导航——构建自动记录用户访问网页导航链接一系列交互操作的导航链接模型,同时编制实现回放该一系列交互操作的规则语言,从而实现自动重复对用户访问网页的导航链接,为数据抽取奠定基础;
第二步、网页数据抽取——重复对用户访问网页的导航链接后,根据预定的抽取规则,抽取展示在Web页面上的数据源对象;
第三步、数据集成处理——将抽取出的数据源对象中的数据元素或数据按预定的目标数据结构进行转换、过滤和集成,形成目标数据对象。
2.根据权利要求1所述的全程化Web信息抽取集成方法,其特征在于:第二步中,网页数据抽取时,抽取的数据源对象为非规整数据和/或规整数据。
3.根据权利要求1所述的全程化Web信息抽取集成方法,其特征在于:第二步中,执行网页数据抽取包括如下步骤:首先,抽取展示在Web页面上的数据源对象;然后,将包含在数据源对象中的数据集成到预先定义好的目标数据结构中从而形成目标数据对象。
4.根据权利要求3所述的全程化Web信息抽取集成方法,其特征在于:抽取展示在Web页面上的数据源对象时,建立数据源对象模型,包含三种类型的数据源对象:数据区对象、数据记录对象和数据项对象,每个数据区对象包含一个或多个数据记录对象,每个数据记录对象包含一个或多个数据项对象。
5.根据权利要求1所述的全程化Web信息抽取集成方法,其特征在于:第二步中,抽取展示在Web页面上的数据源对象时,记录对应页面上用以抽取数据记录的Web数据区和数据源对象、以及用于数据抽取、浏览导航、以及流程控制的HTML控件和各种外部数据源控件;数据源对象采用XML语言进行定义和描述;
该数据源对象实际上封装了用以抽取出指定的数据区域中的数据记录的规则,包括各种抽取属性(Attributes)和模式(Patterns)。
6.根据权利要求1所述的全程化Web信息抽取集成方法,其特征在于:第三步中,数据集成处理中包含对页面数据源对象中抽取出的原始数据进行转换集成的逻辑和规则,数据集成规则将采用某种脚本语言来描述。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410663862.2A CN104408101B (zh) | 2014-11-19 | 2014-11-19 | 一种全程化Web信息抽取集成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410663862.2A CN104408101B (zh) | 2014-11-19 | 2014-11-19 | 一种全程化Web信息抽取集成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104408101A true CN104408101A (zh) | 2015-03-11 |
CN104408101B CN104408101B (zh) | 2018-01-09 |
Family
ID=52645732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410663862.2A Expired - Fee Related CN104408101B (zh) | 2014-11-19 | 2014-11-19 | 一种全程化Web信息抽取集成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104408101B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105468664A (zh) * | 2015-05-12 | 2016-04-06 | 北京众标网络科技有限公司 | 一种信息采集方法及装置 |
CN106874495A (zh) * | 2017-02-23 | 2017-06-20 | 山东浪潮云服务信息科技有限公司 | 基于机器学习建模抽取网页结构的方法 |
CN107329958A (zh) * | 2017-06-08 | 2017-11-07 | 努比亚技术有限公司 | 基于网页的语言转换方法及装置 |
CN111191041A (zh) * | 2019-11-22 | 2020-05-22 | 腾讯云计算(北京)有限责任公司 | 特征数据获取方法、数据存储方法、装置、设备及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103020170A (zh) * | 2012-11-27 | 2013-04-03 | 江苏乐买到网络科技有限公司 | 一种web信息抽取方法 |
US20140012459A1 (en) * | 2012-07-05 | 2014-01-09 | BlueRadios, Inc. | System And Method To Instrument And Gather Three Dimensional (3-D) Vehicle Tracking And Information |
CN103778200A (zh) * | 2014-01-09 | 2014-05-07 | 中国科学院计算技术研究所 | 一种报文信息源抽取方法及其系统 |
US20140214758A1 (en) * | 2013-01-29 | 2014-07-31 | Transbit Technologies Software Private Limited | Method and system for automatic processing and management of technical digital documents and drawings |
-
2014
- 2014-11-19 CN CN201410663862.2A patent/CN104408101B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140012459A1 (en) * | 2012-07-05 | 2014-01-09 | BlueRadios, Inc. | System And Method To Instrument And Gather Three Dimensional (3-D) Vehicle Tracking And Information |
CN103020170A (zh) * | 2012-11-27 | 2013-04-03 | 江苏乐买到网络科技有限公司 | 一种web信息抽取方法 |
US20140214758A1 (en) * | 2013-01-29 | 2014-07-31 | Transbit Technologies Software Private Limited | Method and system for automatic processing and management of technical digital documents and drawings |
CN103778200A (zh) * | 2014-01-09 | 2014-05-07 | 中国科学院计算技术研究所 | 一种报文信息源抽取方法及其系统 |
Non-Patent Citations (1)
Title |
---|
王海涛等: "Web信息抽取网页自动浏览导航与集成规则研究", 《计算机科学与探索》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105468664A (zh) * | 2015-05-12 | 2016-04-06 | 北京众标网络科技有限公司 | 一种信息采集方法及装置 |
CN106874495A (zh) * | 2017-02-23 | 2017-06-20 | 山东浪潮云服务信息科技有限公司 | 基于机器学习建模抽取网页结构的方法 |
CN107329958A (zh) * | 2017-06-08 | 2017-11-07 | 努比亚技术有限公司 | 基于网页的语言转换方法及装置 |
CN107329958B (zh) * | 2017-06-08 | 2021-03-26 | 努比亚技术有限公司 | 基于网页的语言转换方法及装置 |
CN111191041A (zh) * | 2019-11-22 | 2020-05-22 | 腾讯云计算(北京)有限责任公司 | 特征数据获取方法、数据存储方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN104408101B (zh) | 2018-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7672957B2 (en) | User interface configured to display mechanical fabric and semantic model of a legacy computer application generated, graphical view navigating links between mechanical nodes and semantic nodes based on relevant business rules | |
Kuhlins et al. | Toolkits for generating wrappers: A survey of software toolkits for automated data extraction from web sites | |
CN108196880A (zh) | 软件项目知识图谱自动构造方法与系统 | |
US20020178184A1 (en) | Software system for biological storytelling | |
CN102360291B (zh) | 面向服务的基于业务规则引擎的业务规则设计方法 | |
CN106250128A (zh) | 用户界面的显示处理方法及装置 | |
CN104778033B (zh) | 一种积木式软件的构建方法和装置 | |
CN104737166A (zh) | 数据沿袭系统 | |
Favre | G/sup SEE: a Generic Software Exploration Environment | |
CN104408101A (zh) | 一种全程化Web信息抽取集成方法 | |
Cucchiara et al. | Multimedia for cultural heritage: key issues | |
De Boer et al. | Enriching media collections for event-based exploration | |
US20140130008A1 (en) | Generating information models | |
CN111694563B (zh) | 针对用户界面模式的可视化设计系统及其方法 | |
CN110413765A (zh) | 一种海量数据集分析和展示的交互式系统及其方法 | |
Della Penna et al. | A spatial relation-based framework to perform visual information extraction | |
Al-Msie'deen | Requirements traceability: Recovering and visualizing traceability links between requirements and source code of object-oriented software systems | |
CN104866592A (zh) | 搜索引擎中摘要的展现方法和装置 | |
JP5273884B1 (ja) | 構造解析装置及びプログラム | |
Roy et al. | Discovery Layer in Library Retrieval: VuFind as an Open Source Service for Academic Libraries in Developing Countries | |
Condit | Dynamic Digital Map of the Springerville Volcanic Field and the DDM-Template: An example of an open-source tool to distribute maps, data, articles, and multi-media materials | |
Yagui et al. | Curation of physical objects in botany: architecture and development of a linked open data-based application | |
Su et al. | KaitoroCap: A document navigation capture and visualisation tool | |
Hienert et al. | Vizgr: Linking data in visualizations | |
Di Lucca et al. | Recovering conceptual models from web applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180109 Termination date: 20181119 |
|
CF01 | Termination of patent right due to non-payment of annual fee |