CN103761312B - 一种多记录网页的信息抽取***及方法 - Google Patents
一种多记录网页的信息抽取***及方法 Download PDFInfo
- Publication number
- CN103761312B CN103761312B CN201410034376.4A CN201410034376A CN103761312B CN 103761312 B CN103761312 B CN 103761312B CN 201410034376 A CN201410034376 A CN 201410034376A CN 103761312 B CN103761312 B CN 103761312B
- Authority
- CN
- China
- Prior art keywords
- node
- record
- posting field
- document order
- region
- 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.)
- Active
Links
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/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
-
- 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)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Document Processing Apparatus (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种多记录网页的信息抽取***及方法,该***包括:一个网页预处理模块,用于将HTML网页转换为XHTML网页,并过滤网页中用来渲染显示效果的标签,然后根据标签的嵌套结构,构建文档次序树;一个记录区域定位模块,用于接收文档次序树,并利用横向层次分析法在文档次序树中定位出记录区域的位置;一个记录分隔符识别模块,用于从记录区域中找到记录之间的分隔符并进行存储;以及一个记录输出模块,用于将记录区域里所有文本节点按层次顺序遍历输出,在碰到分隔符时输出分隔线,得到最终的抽取结果。该***及方法能够高效、准确地对传统和新式多记录网页进行信息抽取,抽取速度快、准确度高,通用性强,适用范围广。
Description
技术领域
本发明涉及信息抽取技术领域,更具体地,涉及一种在多记录网页中所采用的信息抽取***和抽取方法,能应用于传统多记录网页(如搜索引擎结果页面等)和新式多记录网页(如微博记录网页、论坛帖子网页、产品评论网页等),适用于多种不同媒介和不同领域。
背景技术
在现有技术中,有很多技术方法可用于多记录网页抽取。传统的信息抽取方法采用编写规则的方法,该方法能够准确快速地从特定的数据源中抽取出记录信息。但是当数据源规模增长成百上千个时,再依靠人工编写规则,会耗费大量的时间和精力,无法满足现在信息极速膨胀的处理需求。另一方面,各个数据源的网页模板不是一成不变的,一旦页面模板更新,就需要人工重新修改规则,造成巨大的维护成本。还有一些通过人工标注训练集来生成规则的方法,因为需要人为参与同样不适合抽取海量多变的多记录网页。
在现有技术中,存在着一些针对传统多记录网页的自动抽取技术方法。传统多记录网页是由服务器的cgi程序从数据库检索出记录,然后以制定好的模板动态生成。由于有固定的模板,所以每条记录的结构相似度极高,十分规整。自动抽取方法能够根据一个或一类网页的特征自动抽取网页中相似的数据记录。在这些技术中,典型地使用记录结构相似度(Structure Similarity),并根据计算的相似度值确定记录区域。
在现有技术中,还存在着一些针对新式多记录网页的自动抽取技术方法。新式多记录网页主体内容由网民自我创作,有很高的灵活性,记录外部结构相似,从网页看是一条一条记录,但记录内部结构差异性大,以微博记录为例,有些微博是原创微博,只有原创内容,而有些微博是转发微博,除原创内容外,还内嵌一条被转发的记录。自动抽取方法能够根据一个或一类网页的特征自动抽取网页中相似的数据记录。在这些技术中,典型地使用领域知识,利用每条记录中均出现且易于识别的元素来确定记录区域。
然而,新式多记录网页有其自身的特点,与传统多记录网页有所不同。针对传统多记录网页的抽取方法在计算新式网页结构相似度时得到的值普遍偏低,使得其不能正确识别记录区域;另外,现有针对新式多记录网页的抽取方法往往只关注某一媒介,拓展性不足。
现有的多记录网页抽取方法没有充分考虑新式多记录网页的结构特点,而且只能适用于某个媒介。随着近年来微博、论坛等社交媒介消息的不断产生,新式多记录网页已经拥有大量的数据资源,并需要通过数据挖掘技术来发现其中的热点话题、意见领袖等信息,这就对多记录信息抽取技术提出了一个挑战:如何构建一个统一有效的信息抽取***来满足不同媒介的信息抽取需要。因此,迫切需要有一种高效准确的多记录抽取方法,该方法应能够自动定位网页中的记录区域,并将记录区域中的记录进行分割,同时能够在不同媒介、不同领域方便地使用。
发明内容
本发明的目的在于克服现有技术的不足,提供一种多记录网页的信息抽取***及方法,该***及方法能够高效、准确地对传统和新式多记录网页进行信息抽取,抽取速度快、准确度高,通用性强,适用范围广。
为了实现上述目的,本发明的技术方案是:一种多记录网页的信息抽取***,包括:一个网页预处理模块,用于将HTML网页转换为XHTML网页,并过滤网页中用来渲染显示效果的标签,然后根据标签的嵌套结构,构建文档次序树;一个记录区域定位模块,用于接收待抽取文档的文档次序树,并利用横向层次分析法在所述文档次序树中定位出记录区域的位置;一个记录分隔符识别模块,用于利用双向搜索方法从所述记录区域中找到记录之间的分隔符并进行存储;以及一个记录输出模块,用于将记录区域里所有文本节点按层次顺序遍历输出,在碰到分隔符时输出分隔线,得到最终的抽取结果。
进一步地,所述网页预处理模块包括SAX解析器,用于对XHTML网页代码进行解析,以构建文档次序树。
进一步地,所述SAX解析器包括4个事件处理器,分别为startDocument事件处理器、endDocument事件处理器、startElement事件处理器、endElement事件处理器;所述4个事件处理器分别包含了预先定义好的一系列操作,所述4个事件处理器按照解析标签的顺序依次被触发、执行。
进一步地,所述记录区域定位模块利用横向层次分析法在所述文档次序树中定位出记录区域的位置,包括以下步骤:步骤a1:先序遍历文档次序树,统计并记录每个节点相同子节点个数,找到相同子节点个数最多的节点,并将以该节点为根的子树确定为候选记录区域1且该节点要满足其子树内某个文本节点字符数大于文档次序树文本节点平均字符数;步骤a2:在对文档次序树进行遍历的同时,确定文档次序树中位于中间子树且字符数最多的文本节点位置;确定了文本节点位置即确定了从该节点到文档次序树根节点的唯一路径,选择该路径上相同子节点数最多的节点,将以该节点为根的子树确定为候选记录区域2;步骤a3:如果候选记录区域1的根节点和候选记录区域2的根节点相同,则候选记录区域1和候选记录区域2所代表的子树为最终记录区域,否则计算两棵子树根节点相同子节点个数的商值,引入阈值θ ,如果商值大等于阈值,说明记录条数少,需要依靠最多字符数文本节点来准确定位记录区域,选择候选记录区域2为最终记录区域;如果商值小于阈值,说明记录条数多,选择候选记录区域1作为最终记录区域。
进一步地,所述记录分隔符识别模块从所述记录区域中查找记录之间的分隔符,包括以下步骤:步骤b1:将根节点的所有子节点定义为记录区域节点块,在记录区域节点块中利用双向搜索方法查找能覆盖最多节点的非重叠重复子块;利用双向搜索方法查找重复子块的方法为:首先确定记录区域内字符数最多的文本节点,然后以该文本节点为基准,双向拓展来寻找重复子块;步骤b2:在记录区域节点块中进行重复子块的匹配,在所有匹配到的第一个节点位置***分隔符,以对记录区域内记录进行分割。
本发明还提供一种多记录网页的信息抽取方法,包括以下步骤:步骤1:由网页预处理模块将HTML网页转换为XHTML网页,并过滤网页中用来渲染显示效果的标签,然后根据标签的嵌套结构,构建文档次序树;步骤2:由记录区域定位模块接收来自预处理模块的文档次序树,通过对所述文档次序树的横向层次分析在所述文档次序树中定位出记录区域块的位置;步骤3:由记录分隔符识别模块接收来自记录区域定位模块的记录区域块位置,利用双向搜索方法从记录区域块中找到记录之间的分隔符并进行存储;步骤4:由记录输出模块将记录区域里所有文本节点按层次顺序遍历输出,在碰到分隔符时输出分隔线,得到最终的抽取结果。
进一步地,在步骤1中,所述采用SAX解析器对网页文档进行解析,以构建文档次序树。
进一步地,所述SAX解析器包括4个事件处理器,分别为startDocument事件处理器、endDocument事件处理器、startElement事件处理器、endElement事件处理器;所述4个事件处理器分别包含了预先定义好的一系列操作,所述4个处理器按照解析标签的顺序依次被触发、执行。
进一步地,在步骤2中,通过横向层次分析在所述文档次序树中定位出记录区域的位置,包括以下步骤:步骤a1:先序遍历文档次序树,统计并记录每个节点相同子节点个数,找到相同子节点个数最多的节点,并将以该节点为根的子树确定为候选记录区域1且该节点要满足其子树内某个文本节点字符数大于文档次序树文本节点平均字符数;步骤a2:在对文档次序树进行遍历的同时,确定文档次序树中位于中间子树且字符数最多的文本节点位置;确定了文本节点位置即确定了从该节点到文档次序树根节点的唯一路径,选择该路径上相同子节点数最多的节点,将以该节点为根的子树确定为候选记录区域2;步骤a3:如果候选记录区域1的根节点和候选记录区域2的根节点相同,则候选记录区域1和候选记录区域2所代表的子树为最终记录区域,否则计算两棵子树根节点相同子节点个数的商值,引入阈值θ ,如果商值大等于阈值,说明记录条数少,需要依靠最多字符数文本节点来准确定位记录区域,选择候选记录区域2为最终记录区域;如果商值小于阈值,说明记录条数多,选择候选记录区域1作为最终记录区域。
进一步地,在步骤3中,从记录区域中查找记录之间的分隔符,包括以下步骤:步骤b1:将根节点的所有子节点定义为记录区域节点块,在记录区域节点块中利用双向搜索方法查找能覆盖最多节点的非重叠重复子块;利用双向搜索方法查找重复子块的方法为:首先确定记录区域内字符数最多的文本节点,然后以该文本节点为基准,双向拓展来寻找重复子块;步骤b2:在记录区域节点块中进行重复子块的匹配,在所有匹配到的第一个节点位置***分隔符,以对记录区域内记录进行分割。
相较于现有技术,本发明的有益效果是可以高效、准确地对传统多记录网页(如搜索引擎结果页面等)和新式多记录网页(如微博记录网页、论坛帖子网页、产品评论网页等)进行信息抽取,克服了现有的多记录网页抽取方法对新式多记录网页适用性差的问题,不仅抽取速度快,准确度高,稳定性高,而且通用性强,适用范围广,能够在不同媒介、不同领域方便地应用,具有很强的实用性和广阔的应用前景。
附图说明
下面结合附图及具体实施例对本发明作进一步说明。
图1是本发明实施例的***结构示意图。
图2是本发明实施例中记录分隔实例示意图。
具体实施方式
如图1所示,本发明多记录网页的信息抽取***,包括:
(1)网页预处理模块,用于将HTML网页转换为XHTML网页,并过滤网页中用来渲染显示效果的标签,如<script>等,然后根据标签的嵌套结构,构建文档次序树,以记录标签父子节点关系;网页预处理模块采用SAX机制进行网页解析,网页预处理模块对网页的处理结果用文档次序树进行组织;
(2)记录区域定位模块,用于接收待抽取文档的文档次序树,并利用横向层次分析法在文档次序树中定位出记录区域的位置;
(3)记录分隔符识别模块,用于从记录区域中找到记录之间的分隔符并进行存储;
(4)记录输出模块,用于将记录区域里所有文本节点按层次顺序遍历输出,在碰到分隔符时输出分隔线,得到最终的抽取结果。
下面分别详细描述各模块的实现方案。
(1)网页预处理模块
首先,描述网页预处理模块中的SAX解析器如何进行网页解析,即,如何把网页HTML代码转换成文档次序树。
目前,网页代码的处理机制主要有两种类型:通过构建DOM树来进行网页代码分析的DOM解析器,以及通过定义事件来进行网页代码分析的SAX解析器。为了能够处理大文档,本发明中,采用SAX解析器对网页进行解析。
网页预处理模块包括SAX解析器,用于对XHTML网页代码进行解析,以构建文档次序树。SAX解析器包括4个事件处理器:startDocument事件处理器、endDocument事件处理器、startElement事件处理器、endElement事件处理器,4个事件处理器分别包含了预先定义好的一系列操作,4个事件处理器按照解析标签的顺序依次被触发、执行。当解析到文档第一个标签如<xml>时触发事件处理器startDocument(),然后会执行处理器里预先定义好的一系列操作,执行好后继续进行解析,当解析到开始标签如<head>时触发事件处理器startElement(),当解析到结束标签如</head>时触发事件处理器endElement()。这样依次解析下去直到解析到最后一个标签</xml>触发事件处理器endDocument()。这样在通读一遍网页后,对它的所有解析工作也由事件处理器中预先定义好的操作顺序完成。
为了能构造类似于DOM树的结构,在SAX处理机制下,利用文档次序索引构建标签树。即按照遍历标签的顺序依次编号,并记录下编号所对应标签的父子关系,从而构建文档次序树。
(2)记录区域定位模块
其次,描述记录区域定位模块是如何确定记录区域块的。主要思想是对文档次序树进行横向层次分析,将同一个父节点下同层节点看成一个大的节点块,将记录区域定位的问题转换为寻找节点块的相似子块。
我们提出以下2个假设:
假设1:包含相似节点数多的节点块更有可能是记录区域节点块。
假设2:字符数多的文本节点更有可能是记录区域内的文本节点。
根据假设对文档次序树进行先序遍历,统计并记录每个节点相同子节点个数,将相同子节点个数最多的节点作为候选记录区域1的根节点且该节点要满足其子树内某个文本节点字符数大于文档次序树文本节点平均字符数。增加该判断是为了排除网页菜单栏等其它非记录区域节点块的干扰。因为菜单栏节点块也会有大量相似节点,但它的文本节点字符数通常较少,所以能利用字符数多少进行区分。
在对树进行遍历的同时确定文档次序树中位于中间子树字符数最多的文本节点位置。确定了文本节点位置即确定了从该节点到文档次序树根节点的唯一路径,选择该路径上相同子节点数最多的节点,以该节点为根的子树为候选记录区域2。对最多字符数文本节点位置进行判断的目的是为了排除非记录区域内的长文本节点的干扰,如网页尾部的版权申明等。因为要抽取的记录文本通常位于整个HTML代码的中部,在DOM树中则是中间子树的位置。
如果候选记录区域1的根节点和候选记录区域2的根节点相同,则它们所代表的子树为最终记录区域。否则计算两棵子树根节点相同子节点个数的商值(子树1相同子节点个数比子树2相同子节点个数),引入阈值θ ,如果商值大等于阈值说明记录条数少,需要依靠最多字符数文本节点来更加准确定位记录区域,所以选择候选记录区域2为最终记录区域;当商值小于阈值时,说明记录条数多,这时选择候选记录区域1作为最终记录区域更可靠。通常阈值θ 取0.3时,对大多数记录网页抽取效果较好,可以根据记录条数实际情况调节阀值θ 来获得最佳抽取效果。
(3)记录分隔符识别模块
再次,描述记录分隔符识别模块是如何识别记录之间的分隔符的。将根节点的所有子节点定义为记录区域节点块。第一步,在记录区域节点块中利用后缀数组找到能覆盖最多节点的非重叠重复子块。为了简化查找重复子块的过程,可以首先确定记录区域内字符数最多的文本节点,以该文本节点为基准双向拓展来寻找重复子块。第二步,在记录区域节点块中进行重复子块的匹配,在所有匹配到的第一个节点位置***分隔符,这样就能对记录区域内记录进行分割。
(4)记录输出模块
最后,描述记录输出模块。记录输出模块将记录区域里所有文本节点按层次顺序遍历输出,在碰到分隔符时输出分隔线,得到最终的抽取结果。
本发明最大的创新点是对文档次序树进行横向层次分析,将同一个父节点下同层节点看成一个大的节点块,将寻找相似子树的问题转换为寻找节点块的相似子块。如图1所示的文档次序树中第一层有1个节点块为{<head>、<body>},第二层有1个节点块为{<p>、<ul>、<a>},第三层有1个节点块{<li>、<li>、<li>、<li>、<li>},第四层有5个节点块按照从左到右的顺序分别为{<a>、<T>、<a>}、{<T>、<a>、<a>}、{<T>、<T>}、{<T>}、{<T>},其中<T>表示的是文本节点。如果虚线框内的节点组成记录区域块,则我们将该区域块的根节点称为记录区域根节点(图中为<ul>),根节点所有子节点所构成的节点块称为记录区域节点块(图中为{<li>、<li>、<li>、<li>、<li>})。
据此,本发明提出了多记录网页的信息抽取方法,包括以下步骤:
步骤1:由网页预处理模块将HTML网页转换为XHTML网页,并过滤网页中用来渲染显示效果的标签,如<script>等,然后根据标签的嵌套结构,构建文档次序树;
步骤2:由记录区域定位模块接收来自预处理模块的文档次序树,通过对所述文档次序树的横向层次分析在所述文档次序树中定位出记录区域块的位置;
步骤3:由记录分隔符识别模块接收来自记录区域定位模块的记录区域块位置,利用双向搜索方法从记录区域块中找到记录之间的分隔符并进行存储;
步骤4:由记录输出模块将记录区域里所有文本节点按层次顺序遍历输出,在碰到分隔符时输出分隔线,得到最终的抽取结果。
在步骤1中,所述采用SAX解析器对网页文档进行解析,以构建文档次序树。所述SAX解析器包括4个事件处理器,分别为startDocument事件处理器、endDocument事件处理器、startElement事件处理器、endElement事件处理器;所述4个事件处理器分别包含了预先定义好的一系列操作,所述4个事件处理器按照解析标签的顺序依次被触发、执行。
在步骤2中,通过横向层次分析在所述文档次序树中定位出记录区域的位置,包括以下步骤:
步骤a1:先序遍历文档次序树,统计并记录每个节点相同子节点个数,找到相同子节点个数最多的节点,并将以该节点为根的子树确定为候选记录区域1且该节点要满足其子树内某个文本节点字符数大于文档次序树文本节点平均字符数;
步骤a2:在对文档次序树进行遍历的同时,确定文档次序树中位于中间子树且字符数最多的文本节点位置;确定了文本节点位置即确定了从该节点到文档次序树根节点的唯一路径,选择该路径上相同子节点数最多的节点,将以该节点为根的子树确定为候选记录区域2;
步骤a3:如果候选记录区域1的根节点和候选记录区域2的根节点相同,则候选记录区域1和候选记录区域2所代表的子树为最终记录区域,否则计算两棵子树根节点相同子节点个数的商值,引入阈值θ ,如果商值大等于阈值,说明记录条数少,需要依靠最多字符数文本节点来准确定位记录区域,选择候选记录区域2为最终记录区域;如果商值小于阈值,说明记录条数多,选择候选记录区域1作为最终记录区域。
在步骤3中,从记录区域中查找记录之间的分隔符,包括以下步骤:
步骤b1:将根节点的所有子节点定义为记录区域节点块,在记录区域节点块中利用双向搜索方法查找能覆盖最多节点的非重叠重复子块;具体方法为:
用X表示记录区域节点块序列,其中为节点序列,为彼此相同的子块,每个又可以表示为的节点序列,则问题定义为
即需求得最优的子块使得所有和它相同的子块标签数之和加上的标签数最大。同时求得的不能包含重复的子块,即,表示节点序列和不能完全相同,否则,这里的m为偶数。
我们利用上面的假设2来简化查找的过程,首先确定记录区域内字符数最多的文本节点,以该T节点为基准双向拓展来寻找重复子块(查找的包含该T节点)。 以图2为例,图中带阴影的P节点为区域内字符数最多文本节点,第一轮查找的标签数为1,得到为12;第二轮标签数为2,采用向左向右拓展子块分别得到重复子块为aP和PP,此时得到值为8;以此类推在标签数为4,子块为PPPa时,此时得到为16,覆盖了最多节点,则最终确定为PPPa子块。
步骤b2:在记录区域节点块中进行重复子块的匹配,在所有匹配到的第一个节点位置***分隔符,以对记录区域内记录进行分割。图2中sep即表示***的记录分隔符。
以上是本发明的较佳实施例,凡依本发明技术方案所作的改变,所产生的功能作用未超出本发明技术方案的范围时,均属于本发明的保护范围。
Claims (8)
1.一种多记录网页的信息抽取***,其特征在于,包括:
一个网页预处理模块,用于将HTML网页转换为XHTML网页,并过滤网页中用来渲染显示效果的标签,然后根据标签的嵌套结构,构建文档次序树;
一个记录区域定位模块,用于接收待抽取文档的文档次序树,并利用横向层次分析法在所述文档次序树中定位出记录区域的位置;
一个记录分隔符识别模块,用于从所述记录区域中找到记录之间的分隔符并进行存储;以及
一个记录输出模块,用于将记录区域里所有文本节点按层次顺序遍历输出,在碰到分隔符时输出分隔线,得到最终的抽取结果;
所述记录区域定位模块利用横向层次分析法在所述文档次序树中定位出记录区域的位置,包括以下步骤:
步骤a1:先序遍历文档次序树,统计并记录每个节点相同子节点个数,找到相同子节点个数最多的节点,并将以该节点为根的子树确定为候选记录区域1且该节点要满足其子树内某个文本节点字符数大于文档次序树文本节点平均字符数;
步骤a2:在对文档次序树进行遍历的同时,确定文档次序树中位于中间子树且字符数最多的文本节点位置;确定了文本节点位置即确定了从该节点到文档次序树根节点的唯一路径,选择该路径上相同子节点数最多的节点,将以该节点为根的子树确定为候选记录区域2;
步骤a3:如果候选记录区域1的根节点和候选记录区域2的根节点相同,则候选记录区域1和候选记录区域2所代表的子树为最终记录区域,否则计算两棵子树根节点相同子节点个数的商值,引入阈值θ,如果商值大于等于阈值,说明记录条数少,需要依靠最多字符数文本节点来准确定位记录区域,选择候选记录区域2为最终记录区域;如果商值小于阈值,说明记录条数多,选择候选记录区域1作为最终记录区域。
2.根据权利要求1所述的一种多记录网页的信息抽取***,其特征在于,所述网页预处理模块包括SAX解析器,用于对XHTML网页代码进行解析,以构建文档次序树。
3.根据权利要求2所述的一种多记录网页的信息抽取***,其特征在于,所述SAX解析器包括4个事件处理器,分别为startDocument事件处理器、endDocument事件处理器、startElement事件处理器、endElement事件处理器;所述4个事件处理器分别包含了预先定义好的一系列操作,所述4个事件处理器按照解析标签的顺序依次被触发、执行。
4.根据权利要求1所述的一种多记录网页的信息抽取***,其特征在于,所述记录分隔符识别模块从所述记录区域中查找记录之间的分隔符,包括以下步骤:
步骤b1:将根节点的所有子节点定义为记录区域节点块,在记录区域节点块中利用双向搜索方法查找能覆盖最多节点的非重叠重复子块;利用双向搜索方法查找重复子块的方法为:首先确定记录区域内字符数最多的文本节点,然后以该文本节点为基准,双向拓展来寻找重复子块;
步骤b2:在记录区域节点块中进行重复子块的匹配,在所有匹配到的第一个节点位置***分隔符,以对记录区域内记录进行分割。
5.一种多记录网页的信息抽取方法,其特征在于,包括以下步骤:
步骤1:由网页预处理模块将HTML网页转换为XHTML网页,并过滤网页中用来渲染显示效果的标签,然后根据标签的嵌套结构,构建文档次序树;
步骤2:由记录区域定位模块接收来自预处理模块的文档次序树,通过对所述文档次序树的横向层次分析在所述文档次序树中定位出记录区域块的位置;
步骤3:由记录分隔符识别模块接收来自记录区域定位模块的记录区域块位置,从记录区域块中找到记录之间的分隔符并进行存储;
步骤4:由记录输出模块将记录区域里所有文本节点按层次顺序遍历输出,在碰到分隔符时输出分隔线,得到最终的抽取结果;
在步骤2中,通过横向层次分析在所述文档次序树中定位出记录区域的位置,包括以下步骤:
步骤a1:先序遍历文档次序树,统计并记录每个节点相同子节点个数,找到相同子节点个数最多的节点,并将以该节点为根的子树确定为候选记录区域1且该节点要满足其子树内某个文本节点字符数大于文档次序树文本节点平均字符数;
步骤a2:在对文档次序树进行遍历的同时,确定文档次序树中位于中间子树且字符数最多的文本节点位置;确定了文本节点位置即确定了从该节点到文档次序树根节点的唯一路径,选择该路径上相同子节点数最多的节点,将以该节点为根的子树确定为候选记录区域2;
步骤a3:如果候选记录区域1的根节点和候选记录区域2的根节点相同,则候选记录区域1和候选记录区域2所代表的子树为最终记录区域,否则计算两棵子树根节点相同子节点个数的商值,引入阈值θ,如果商值大于等于阈值,说明记录条数少,需要依靠最多字符数文本节点来准确定位记录区域,选择候选记录区域2为最终记录区域;如果商值小于阈值,说明记录条数多,选择候选记录区域1作为最终记录区域。
6.根据权利要求5所述的一种多记录网页的信息抽取方法,其特征在于,在步骤1中,采用SAX解析器对网页文档进行解析,以构建文档次序树。
7.根据权利要求6所述的一种多记录网页的信息抽取方法,其特征在于,所述SAX解析器包括4个事件处理器,分别为startDocument事件处理器、endDocument事件处理器、startElement事件处理器、endElement事件处理器;所述4个事件处理器分别包含了预先定义好的一系列操作,所述4个事件处理器按照解析标签的顺序依次被触发、执行。
8.根据权利要求5所述的一种多记录网页的信息抽取方法,其特征在于,在步骤3中,从记录区域中查找记录之间的分隔符,包括以下步骤:
步骤b1:将根节点的所有子节点定义为记录区域节点块,在记录区域节点块中利用双向搜索方法查找能覆盖最多节点的非重叠重复子块;利用双向搜索方法查找重复子块的方法为:首先确定记录区域内字符数最多的文本节点,然后以该节点为基准,双向拓展来寻找重复子块;
步骤b2:在记录区域节点块中进行重复子块的匹配,在所有匹配到的第一个节点位置***分隔符,以对记录区域内记录进行分割。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410034376.4A CN103761312B (zh) | 2014-01-24 | 2014-01-24 | 一种多记录网页的信息抽取***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410034376.4A CN103761312B (zh) | 2014-01-24 | 2014-01-24 | 一种多记录网页的信息抽取***及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103761312A CN103761312A (zh) | 2014-04-30 |
CN103761312B true CN103761312B (zh) | 2017-02-08 |
Family
ID=50528549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410034376.4A Active CN103761312B (zh) | 2014-01-24 | 2014-01-24 | 一种多记录网页的信息抽取***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103761312B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104217025B (zh) * | 2014-09-28 | 2018-04-13 | 福州大学 | 针对多记录网页的记录项抽取***及方法 |
CN106294722B (zh) * | 2016-08-09 | 2019-11-22 | 上海资誉网络科技有限公司 | 一种网页内容自动提取方法及装置 |
CN107122403B (zh) * | 2017-03-22 | 2020-08-07 | 安徽大学 | 一种网页学术报告信息抽取方法和*** |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1786965A (zh) * | 2005-12-21 | 2006-06-14 | 北大方正集团有限公司 | 一种新闻网页正文信息的提取方法 |
CN101192234A (zh) * | 2007-06-07 | 2008-06-04 | 腾讯科技(深圳)有限公司 | 一种基于网页抽取的搜索***及搜索方法 |
CN101515287A (zh) * | 2009-03-24 | 2009-08-26 | 崔志明 | 一种用于复杂页面的包装器自动生成方法 |
CN101582075A (zh) * | 2009-06-24 | 2009-11-18 | 大连海事大学 | Web信息抽取*** |
CN101727486A (zh) * | 2009-12-04 | 2010-06-09 | 中国人民解放军信息工程大学 | 一种Web论坛信息抽取*** |
CN101872350A (zh) * | 2009-04-24 | 2010-10-27 | 富士通株式会社 | 网页正文抽取方法和装置 |
EP2482206A1 (en) * | 2011-01-27 | 2012-08-01 | Samsung Electronics Co., Ltd. | Method and apparatus for web browsing of handheld device |
-
2014
- 2014-01-24 CN CN201410034376.4A patent/CN103761312B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1786965A (zh) * | 2005-12-21 | 2006-06-14 | 北大方正集团有限公司 | 一种新闻网页正文信息的提取方法 |
CN101192234A (zh) * | 2007-06-07 | 2008-06-04 | 腾讯科技(深圳)有限公司 | 一种基于网页抽取的搜索***及搜索方法 |
CN101515287A (zh) * | 2009-03-24 | 2009-08-26 | 崔志明 | 一种用于复杂页面的包装器自动生成方法 |
CN101872350A (zh) * | 2009-04-24 | 2010-10-27 | 富士通株式会社 | 网页正文抽取方法和装置 |
CN101582075A (zh) * | 2009-06-24 | 2009-11-18 | 大连海事大学 | Web信息抽取*** |
CN101727486A (zh) * | 2009-12-04 | 2010-06-09 | 中国人民解放军信息工程大学 | 一种Web论坛信息抽取*** |
EP2482206A1 (en) * | 2011-01-27 | 2012-08-01 | Samsung Electronics Co., Ltd. | Method and apparatus for web browsing of handheld device |
Non-Patent Citations (1)
Title |
---|
针对Web论坛的一种结构化数据自动抽取方法;关冕等;《山东大学学报(理学版)》;20100516;第42-47页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103761312A (zh) | 2014-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102930031B (zh) | 由网页中提取双语平行正文的方法和*** | |
CN101515287B (zh) | 一种用于复杂页面的包装器自动生成方法 | |
CN102662969B (zh) | 一种基于网页结构语义的互联网信息对象定位方法 | |
CN101727498A (zh) | 一种基于web结构的网页信息自动提取方法 | |
CN103294781A (zh) | 一种用于处理页面数据的方法与设备 | |
CN105653668A (zh) | 云环境中基于DOMTree的网页内容分析提取优化方法 | |
CN107436955B (zh) | 一种基于Wikipedia概念向量的英文词语相关度计算方法和装置 | |
CN103823824A (zh) | 一种借助互联网自动构建文本分类语料库的方法及*** | |
CN104268148A (zh) | 一种基于时间串的论坛页面信息自动抽取方法及*** | |
CN103136358B (zh) | 一种自动抽取论坛数据的方法 | |
CN103886020B (zh) | 一种房地产信息快速搜索方法 | |
CN102591612A (zh) | 一种基于标点连续性的通用网页正文提取方法及其*** | |
CN103530429A (zh) | 一种网页正文抽取的方法 | |
Döhmen et al. | Multi-hypothesis CSV parsing | |
CN102135976A (zh) | 超文本标识语言页面结构化数据提取方法及装置 | |
CN104899340A (zh) | 一种基于最紧致片段的ietm技术信息片段检索装置及其检索方法 | |
CN102508901A (zh) | 基于内容的海量图像检索方法和*** | |
CN108153851B (zh) | 一种基于规则和语义的通用论坛主题帖页面信息抽取方法 | |
CN103761312B (zh) | 一种多记录网页的信息抽取***及方法 | |
CN104915438A (zh) | 一种获取特定话题微博中pcu关联数据的方法 | |
CN102591931B (zh) | 基于树权值的网页数据记录识别和抽取方法 | |
CN104217025B (zh) | 针对多记录网页的记录项抽取***及方法 | |
CN102236713A (zh) | 一种数字电视交互服务页面的信息提取方法及其装置 | |
CN112363996B (zh) | 用于建立电网知识图谱的物理模型的方法及***和介质 | |
CN104133913A (zh) | 一种基于视频分析与搜索聚合的城市商铺信息库自动构建***及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |