CN102650999B - 一种从网页中抽取对象属性值信息的方法和系统 - Google Patents

一种从网页中抽取对象属性值信息的方法和系统 Download PDF

Info

Publication number
CN102650999B
CN102650999B CN201110047574.0A CN201110047574A CN102650999B CN 102650999 B CN102650999 B CN 102650999B CN 201110047574 A CN201110047574 A CN 201110047574A CN 102650999 B CN102650999 B CN 102650999B
Authority
CN
China
Prior art keywords
node
tape label
dom
tree
child
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
Application number
CN201110047574.0A
Other languages
English (en)
Other versions
CN102650999A (zh
Inventor
孙军
谢宣松
姜珊珊
赵利军
郑继川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to CN201110047574.0A priority Critical patent/CN102650999B/zh
Publication of CN102650999A publication Critical patent/CN102650999A/zh
Application granted granted Critical
Publication of CN102650999B publication Critical patent/CN102650999B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种从网页中抽取对象属性值信息的方法,包括:a)对于一个给定网页,得到与该给定网页对应的文档对象模型DOM树,并计算DOM树中的每个DOM节点的相关信息;b)根据DOM树和每个DOM节点的相关信息,构造一个带标签节点图,并且计算每个带标签节点的分数;c)基于带标签节点的分数,从得到的带标签节点图选择带标签节点树;d)基于选中的带标签节点树构造属性值树。这种方法一个优点是可以最小化领域相关信息的使用,而领域知识需要人力的参与,这往往困难且代价昂贵。该方法的另一个优点是可以抽取属性值树,而不仅仅是属性值对。属性往往拥有一个内在的层次结构。高层级的属性为低层级属性值提供了上下文信息,这些信息有助于信息集成和机器理解。

Description

一种从网页中抽取对象属性值信息的方法和系统
技术领域
本发明涉及信息处理和信息抽取领域,特别是关于一种能够从网页中抽取对象属性值信息的系统和方法。
背景技术
在现有技术中,存在如下一些相关的技术:
1.US7720830(B2)Hierarchical conditional random fields for web extraction
在该现有技术中提出的方法为一个信息页面打上对象信息标签。在把网页分成块之后,层级条件随机场被用来给对象元素打标签。
上述现有技术与本申请的不同点:首先,上述现有技术假设了对象类的属性名集合已知,而本申请的方法同时抽取属性名和属性值。其次,上述现有技术使用的是监督的方法,所以需要训练数据。而本申请的方法是非监督的方法,不需要训练数据。
2.ISWC2006Using Ontologies for Extracting Product Features from WebPages
该现有技术中提出的方法用纯粹视觉的方法从网页中识别表数据,然后在领域本体的帮助下抽取属性值对。
不同点:首先,本申请的方法可以同时使用HTML DOM(DocumentObject Model,文档对象模型)树信息和视觉信息,而他们的表格数据识别方法只使用了视觉信息,尤其是位置信息。在某些网页中,产品特征区域并不总是直接可视的。因此,在这种情况下,上述现有技术的算法会失效,而本申请的算法可以基于DOM树来抽取信息。其次,上述现有技术的算法假设属性值信息是排列得很好的表格结构,但在某些网页中,属性值信息是不规则排列得列表。本申请的方法没有这样的限制。最后,上述现有技术的算法在领域本体的帮助下输出属性值对,而本申请的方法在没有领域本体的帮助下输出属性值树。
3.IJCAI2007-Semi-Supervised Learning of Attribute-Value Pairs fromProduct Descriptions
该现有技术中提出的方法从产品描述中抽取属性值对。该现有技术使用了半监督学习算法来抽取属性名和属性值。然后,通过依赖解析器(dependency parser)和共现的分数来得到属性值对。
不同点:首先,上述现有技术不使用HTML的tag信息。而这些信息在本申请的方法中为抽取属性值提供了结果非常重要的信号。其次,上述现有技术不使用视觉信息,本申请的方法很有效地使用了这样的信息。最后,上述现有技术仅抽取属性值对,而本申请的方法可以抽取属性值层级结构。最后,上述现有技术需要训练数据,而本申请的方法是非监督的方法,不需要训练数据。
互联网上有很多含对象属性值信息的网页,比如说产品参数网页。自动从网页中抽取对象属性值信息可以用来更好地构建此类网页的索引,有助于搜索。给定一个含对象参数数据的网页,本发明处理的任务是从给定网页中抽取对象属性值信息。关于这个任务已经有一些工作。然而,已有工作在有些场景下不适用。首先,已有的工作往往依赖于领域相关的信息,比如说,某个领域的对象的属性名和值信息。但这些领域知识需要人力的参与,这往往困难且代价昂贵。其次,已有的方法并不能抽取属性的层次结构。现实中的属性往往拥有一个内在的层次结构。高层级的属性为低层级属性值提供了上下文信息。本发明提出的方法可以用来抽取属性值树,而不仅仅是属性值对。
这里我们更加详细地描述本发明得到的属性值树的一个应用。假设我们需要构造一个产品垂直搜索引擎。因为互联网上关于产品的数据量太大了,手动处理并不现实,所以,自动分析产品网页数据成为一种必要。如果网页上的产品属性值信息能够被精确地抽取,那我们构建的垂直搜索引擎的结果将会更加相关和有用,这是由于网页上跟产品无关的信息可以被去除。另外,一些高级的查询类型可以被支持。比如两个高级的查询如下:“cameraresolution>300mp”(找到像素大于300万的相机)和“ricoh cx3resolution”(找到理光cx3相机的解析度)。对于抽取的属性值树,一个例子是:对于包含两条路径的一个属性值树(此处不包含值),即“lens system→type”和“lens system→optical zoom”。如果没有高层级的文本“lens system”,低层级的属性名“type”的含义是模糊的。如果用户搜索“Ricoh cx3lens type”,如果更高层级的属性名“lens system”没有被很好地抽取的话,搜索引擎就不知道用户需要“RicohCX3”的哪项属性。如果用户搜索“Ricoh cx3lens system”,如果属性值树信息被精确地抽取,那搜索引擎可以返回更多的结果,因为“lens system”对应于更高层级属性名。
发明内容
本发明的另外方面和优点部分将在后面的描述中阐述,还有部分可从描述中明显地看出,或者可以在本发明的实践中得到。
本发明可应用在构造对象数据库,为含对象属性值信息的文档构建索引和摘要。
本发明的目的是从含对象参数数据的网页中抽取对象属性值信息。
本发明提供一种从网页中抽取对象属性值信息的方法,包括:a)对于一个给定网页,得到与该给定网页对应的文档对象模型DOM树,并计算DOM树中的每个DOM节点的相关信息;b)根据DOM树和每个DOM节点的相关信息,构造一个带标签节点图,并且计算每个带标签节点的分数;c)基于带标签节点的分数,从得到的带标签节点图选择带标签节点树;d)基于选中的带标签节点树构造属性值树;步骤b)进一步包括:b1)以如下顺序选择一个DOM节点:每次选中一个未处理的DOM叶节点或者是本身未处理但是每个孩子都是已处理节点的DOM节点;b2)对于选中的DOM节点,穷举该选中的DOM节点的可能的带标签节点,对于选中的DOM节点所对应的每个带标签节点:构造当前处理的带标签节点的所有候选孩子结构,计算每个候选孩子结构的分数;并且选择分数最大的候选孩子结构作为当前处理的带标签节点的孩子结构,得到的最大分数记录为当前处理的带标签节点的分数;b3)判断是否还有未处理的DOM节点,如果有则转到步骤b1);b4)如果所有的DOM节点处理完之后,得到带标签节点图,此图由带标签节点和选中的孩子结构构成。
本发明还提供一种从网页中抽取对象属性值信息的系统,包括:网页预处理模块,对于一个给定网页,得到与该给定网页对应的DOM树,并计算DOM树中的每个DOM节点的相关信息;带标签节点图构造模块,用于根据DOM树和每个DOM节点的相关信息,构造一个带标签节点图,并且计算每个带标签节点的分数;带标签节点树选择模块,用于基于带标签节点的分数,从得到的带标签节点图选择带标签节点树;属性值树生成模块,用于基于选中的带标签节点树构造属性值树;所述带标签节点图构造模块进一步包括:第一判定单元,用于判断是否还有未处理的DOM节点;第一选择单元,根据第一判定单元的结果,以如下顺序每次选择一个DOM节点进行处理:每次选中一个未处理的DOM叶节点或者是本身未处理但是每个孩子都是已处理节点的DOM节点;带标签节点列举单元,用于对于选中的DOM节点,穷举该选中的DOM节点的可能的带标签节点;孩子结构构造单元,对于带标签节点列举单元中列举的选中的DOM节点的每个带标签节点,构造当前处理的带标签节点的所有候选孩子结构,计算每个候选孩子结构的分数,并且选择分数最大的候选孩子结构作为当前处理的带标签节点的孩子结构,得到的最大分数记录为当前处理的带标签节点的分数;带标签节点图获得单元,当第一判定单元判断所有的DOM节点处理完之后,得到带标签节点图,此图由带标签节点和选中的孩子结构构成。
如上所述,本发明提供了从含对象参数数据的网页中抽取对象属性值信息的方法和装置。本发明提出的方法可以基于网页DOM树信息和视觉信息来抽取属性值树。这种方法一个优点是可以最小化领域相关信息的使用,而领域知识需要人力的参与,这往往困难且代价昂贵。本发明提出的方法的另一个优点是可以抽取属性值树,而不仅仅是属性值对。属性往往拥有一个内在的层次结构。高层级的属性为低层级属性值提供了上下文信息,这些信息有助于信息集成和机器理解。
附图说明
通过结合附图对本发明的优选实施例进行详细描述,本发明的上述和其他目的、特性和优点将会变得更加清楚,其中相同的标号指定相同结构的单元,并且在其中:
图1示出了根据本发明实施例的从网页中抽取对象属性值信息的系统的方框图。
图2示出了根据本发明实施例的从网页中抽取对象属性值信息的系统的示例性的硬件构架图。
图3示出了根据本发明实施例的从网页中抽取对象属性值信息的方法的流程图。
图4A示出了一段简单的HTML代码块;图4B示出了与图4A的HTML代码块对应的DOM子树;以及4C示出了与图4B中的DOM子树对应的属性值树。
图5A示出了另外一段HTML代码块;以及图5B示出了与图5A中的HTML代码块对应的属性值树。
图6示出了与图4A中部分DOM节点相对应的部分带标签节点图。
图7描述了根据本发明实施例的带标签节点图的构造过程流程图。
图8示出了根据本发明实施例的图1的系统中的带标签节点图构造模块102的示意性实现方框图。
图9描述了根据本发明实施例的带标签节点树的选择过程的流程图。
图10为根据本发明实施例的部分带标签节点树的示意图。
图11示出了根据本发明实施例的图1的系统中的带标签节点树选择模块103的示意性实现方框图。
图12中显示了另一个关于某数码相机的属性值树的示例。
图13描述了根据本发明实施例的属性值树的生成过程的流程图。
图14描述了根据本发明实施例的针对选中的单个带标签节点树构造部分属性值树的过程。
图15示出了根据本发明实施例的图1的系统中的属性值树生成模块104的示意性实现方框图。
图16示出了根据本发明实施例的图15的属性值树生成模块104中的部分属性值树构造单元1502的示意性实现方框图。
具体实施方式
下面将参照示出本发明实施例的附图充分描述本发明。然而,本发明可以以许多不同的形式实现,而不应当认为限于这里所述的实施例。相反,提供这些实施例以便使本公开透彻且完整,并且将向本领域技术人员充分表达本发明的范围。在附图中,为了清楚起见放大了组件。
除非另有定义,这里使用的所有术语(包括技术和科学术语)具有与本发明所属领域的普通技术人员共同理解的相同含义。还应当理解,诸如在通常字典里定义的那些术语应当被解释为具有与它们在相关技术的上下文中的含义相一致的含义,而不应用理想化或极度形式化的意义来解释,除非这里明确地这样定义。
这里参照支持根据本发明实施例的方法、装置(系统)和计算机程序产品的方框图和流程图描述本发明示例性实施例。应当理解,流程图和/或方框图的每个方框以及流程图和/或方框图的方框组合可以通过计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得通过计算机或其他可编程数据处理装置的处理器执行的指令创建实现流程图和/或方框图方框中指定功能/动作的手段。
这些计算机程序指令也可以存储在计算机可读存储器中,可以引导计算机或其他可编程数据处理装置以特定方式运行,使得存储在计算机可读存储器中的指令产生包括实现流程图和/或方框图方框中指定功能/动作的指令手段的制造物品。
计算机程序指令还可以加载到计算机或其他可编程数据处理装置上,导致在计算机或其他可编程装置上执行一系列操作步骤来产生计算机实现的处理,使得计算机或其他可编程装置上执行的指令提供实现流程图和/或方框图方框中指定功能/动作的步骤。每个方框可以表示代码模块、片断或部分,其包括一个或多个用来实现指定逻辑功能的可执行指令。还应当注意,在其他实现中,方框中标出的功能可能不按图中标出的顺序发生。例如,根据所涉及的功能,连续示出的两个方框可能实际上基本上并发地执行,或者方框有时可能以相反的顺序执行。
本发明的目的是从含对象参数数据的网页中抽取对象属性值信息。
图1示出了根据本发明实施例的从网页中抽取对象属性值信息的系统的方框图。根据本发明的一个实施例,该系统可包括4个模块。图1中描述了这些模块。这4个模块是:网页预处理模块101、带标签节点图的构造模块102、带标签节点树的选择模块103、和属性值树的生成模块104。图1中还显示了每个模块的输入输出。给定一个网页,网页预处理模块101生成一个DOM树,此DOM树带有一些计算后的式样等信息。然后基于得到的DOM树,带标签节点图的构造模块102输出一个带标签节点图。在这之后,带标签节点树的选择模块103从得到的带标签节点图中选择一个或多个带标签节点树。给定这些带标签节点树,属性值树的生成模块104生成了结果属性值树。
图2示出了根据本发明实施例的从网页中抽取对象属性值信息的系统的示例性的硬件构架图。本发明的实施例可以实现在一个计算机系统上。输入的网页和抽取结果可以保存在图2中的存储设备(外存)上。图1中的四个模块可以保存在图2中的主存(RAM)上。这四个模块可以通过中央处理器(CPU)执行。中间结果和最终结果(包含:DOM树信息、带标签节点图和属性值树)可以保存在图2中的主存(RAM)上。注意到,在抽取过程完成之后,得到的属性值树可输出到存储设备(外存),比如说硬盘。
图3示出了根据本发明实施例的从网页中抽取对象属性值信息的方法的流程图。
在图3中包括如下步骤:网页预处理S301、带标签节点图的构造S302、带标签节点树的选择S303、和属性值树的生成S304。如图3所示,对每个步骤来说都有相应的输入输出。
在图1中的每个模块执行与图3的方法流程图中的相应步骤对应的步骤。
在以下具体实现中,将参照图4-图14分别描述从网页中抽取对象属性值信息的方法的各个步骤的具体实现。在以下的实现中,仅仅是示例性的,本领域技术人员应该理解,步骤顺序的变动或根据本实现进行的类似修改都在本申请的范围内。
1.网页预处理
给定一个网页,网页预处理模块101生成一个DOM树,此DOM树带有一些计算后的式样信息。
首先,从互联网上下载网页,网页包含:HTML文件、附带的CSS文件、Javascript文件、图像文件等等。给定这些网页文件,网络浏览器构造DOM树。工业界有一些主流的网络浏览器,比如Mozilla Firefox、Windows InternetExplorer、Google Chrome或者Apple Safari。网络浏览器引擎通过分析语法结构来解析HTML代码,构造含计算后式样信息的DOM树,执行一些动态内容(比如Javascript代码),然后在浏览器窗口里渲染网页。然后用户可以在计算机屏幕上浏览网页。
同样地,DOM树和计算后的式样信息可以通过程序接口,例如Mozilla提供的XULRunner程序接口,被其他程序得到。然后得到的DOM树信息可以作为本发明的步骤S301的输入。因此,给定一个网页,含计算后式样信息的DOM树可以通过现有的或将来开发的第三方工具得到。详细的含计算后式样信息的DOM树的构造过程不在本发明的范围内,DOM树的构造可以通过现有或将来开发的程序得到,因此在本文中不再赘述。
图4A示出了一段简单的HTML代码块;图4B示出了与图4A的HTML代码块对应的DOM子树。DOM树中的每个节点被称作DOM节点。每个DOM节点可以通过节点名字或者以此节点为根节点的子树的内容来引用。例如,在图4B中,DOM节点“<h3>”可以用“<h3>size</h3>”来引用。4C示出了与图4B中的DOM子树对应的属性值树。
图5A示出了另外一段HTML代码块;图5B示出了与图5A中的HTML代码块对应的属性值树。
基于浏览器渲染引擎生成的含计算后式样信息的DOM树,根据本发明的系统需要计算一些额外信息以备后用。与每个DOM节点对应的计算后信息至少考虑到以下内容:1)以此DOM节点为根节点的DOM子树中的DOM节点的名字、类型和值;2)以此DOM节点为根节点的DOM子树的结构;3)以此DOM节点为根节点的DOM子树中的DOM节点的视觉信息。
具体说来,对应于DOM树中的每个DOM节点,计算后的信息至少包含以下内容:子树中的文本节点个数、子树中一些具有某些HTML tag名字的元素节点、子树中的等价文本节点个数、每个节点的高度和宽度、子树中的字体大小和粗细均值和方差、此DOM节点的可见性、此DOM节点的位置、子树中的字体颜色种类和背景色种类。
这里我们做一些澄清。在下面的描述中,有三种节点集合。第一种集合中的节点称作DOM节点,这些节点属于网页的HTML DOM树。第二种集合中的节点称作带标签节点,这些节点从构造的带标签节点图中而来。第三种集合中的节点称作概念节点,这些节点从生成的属性值树中而来。另外,本发明中的树都是有向树。所以,每个树都有个根节点,每条边都是有向的。
2.带标签节点图的构造
基于步骤S301中得到的带计算后DOM树信息的DOM树,带标签节点图的构造模块的目的是构造带标签节点图。
构造的带标签节点图包含多个带标签节点。每个带标签节点都可以找到与之对应的给定网页中的某个DOM节点。给定网页中的每个DOM节点对应于多个带标签节点。每个带标签节点带有一个标签和一个分数。
带标签节点的标签代表了对应的DOM节点所在的DOM子树的一个分类。
标签的集合至少包含以下标签:[attribute]、[value]、[attribute-value-pair]、[heading-N](N是一个正整数)、[attribute-value-list]、[heading-attribute-value-list]、[attribute-value-tree]和[attribute-value-forest]。对这些标签的意义的解释如下所示:
1)[attribute]:对象属性名。
2)[value]:对象属性值。
3)[attribute-value-pair]:属性值对。
举例:在图4A中,DOM节点“<li><b>width</b>:3.5cm</li>”非常可能是一个[attribute-value-pair],其属性名为“width”,值为“3.5cm”。
4)[heading-N]:更高层级的属性名,称作标题属性。N是一个正整数。N的值越小,表明属性在属性层级结构中的层级越高。数字N是用来描述带标签节点和其孩子结构中的带标题属性标签的标签节点之间的层级关系。
举例:在图5A中,the DOM节点“<h3>Shooting Distance<h3>”可能是[heading-1],而DOM节点“<h5>Normal shooting</h5>”可能是[heading-2]。
5)[attribute-value-list]:属性值对的列表。
6)[heading-attribute-value-list]:带几个属性值孩子的标题属性。
举例:图4A中的DOM节点“<div>...</div>”非常可能是[heading-attribute-value-list],其标题属性名为“size”并含有两个属性值对。
7)[attribute-value-tree]:属性值树。
举例:图5A中的DOM节点“<div>...</div>”非常可能是[attribute-value-tree],其根属性名为“Shooting Distance”。
8)[attribute-value-forest]:一些属性值树。
带标签节点的分数代表对应的DOM节点是对应标签的可能性。分数越高,对应的DOM节点是对应标签的可能性越大。
对于图4A中的DOM树的部分DOM节点,图6中显示了构造的部分带标签节点图。
图6示出了与图4A中DOM节点div相对应的部分带标签节点图。
如图6所示,对于图4A中的div节点,其示例性地示出了该div节点的标签为heading-attribute-value-list的带标签节点和标签为attribute-value-list的带标签节点。但本领域技术人员应该理解,图6仅仅是示意性地,还可以构造该div节点的具有其他标签的带标签节点。
图7描述了根据本发明实施例的带标签节点图的构造过程流程图。此构造过程构成了图3中的带标签节点图的构造步骤S302,其由图1中的带标签节点图的构造模块102执行。
图7中所示的带标签节点图的构造过程是一个自底向上的过程,此过程可以描述如下。
算法描述:
以某种顺序每次选择一个DOM节点进行处理,此顺序需要满足以下规律:每次选中一个未处理的DOM叶节点或者是本身未处理但是它的每个孩子都是已经处理节点的DOM节点。(S701、S704)这样,只有当DOM节点是叶节点,或者该DOM节点的所有孩子节点都被处理之后,这样的DOM节点才能被选择进行如下的处理。也即,带标签节点图的构成过程是先得到最低层节点的带标签节点图。对于每个选中的DOM节点,执行如下处理:
对于每个选中DOM节点,穷举该选中DOM节点的所有可能的带标签节点,从而得到该选中DOM节点的多个带标签节点。例如,对于图4B中的div节点,得到具有不同标签(heading-attribute-value-list、attribute-value-list等)的多个带标签节点。对于选中DOM节点的每个带标签节点,执行如下处理:
i.构造当前处理的带标签节点的所有候选孩子结构,计算每个候选孩子结构的分数。(S702)
ii.选择分数最大的候选孩子结构作为当前处理的带标签节点的孩子结构。此最大分数记录为当前处理的带标签节点的分数。(S703)
在所有的DOM节点处理完之后,我们得到带标签节点图,此图由带标签节点和选中的孩子结构构成。(S705)
在步骤S702的构造过程中,每个候选孩子结构包含对应于当前考虑的DOM节点的DOM子孙节点的一个或多个带标签节点。
对于每种标签的带标签节点,有着不尽相同的候选孩子结构。候选孩子结构的标签形式可以用规则和正则表达式来描述。
例如,对于标签[heading-attribute-value-list]的三种可能的候选孩子结构的标签形式如下所示:
1)[heading-1]([attribute-value-list])+
2)[heading-1]([attribute-value-pair])+
3)[heading-attribute-value-list]
符号“(...)+”代表括号中的“...”部分重复一次或者多次。
标签[attribute-value-pair]的两种可能性比较大的候选孩子结构的标签形式如下所示:
1)[attribute][value]
2)[attribute-value-pair]
标签[attribute-value-list]的三种可能性比较大的候选孩子结构的标签形式如下所示:
1)([attribute-value-pair])+
2)([attribute][value])+
3)([attribute-value-list])+
标签[heading-attribute-value-list]的三种可能性比较大的候选孩子结构的标签形式如下所示:
1)[heading-1]([attribute-value-list])+
2)[heading-1]([attribute-value-pair])+
3)[heading-attribute-value-list]
标签[attribute-value-tree]的三种可能性比较大的候选孩子结构的标签形式如下所示:
1)[heading-1]([heading-attribute-value-list])+
2)[attribute-value-tree]
3)[heading-1][attribute-value-forest]
标签[attribute-value-forest]的四种可能性比较大的候选孩子结构的标签形式如下所示:
1)([heading-attribute-value-list])+
2)([heading-1]([attribute-value-pair])+)+
3)([heading-1]([attribute][value])+)+
4)[attribute-value-forest]
上述列举的对于不同标签的候选孩子结构的标签形式仅仅是示意性的,是网页分析的经验结果。本领域技术人员应该理解,根据不同的网页分析和不同的实际情况,对于不同标签还可以包含其他的候选孩子结构的标签形式,并不限于上述的列举。
候选孩子结构中的带标签节点是序列关系或者层级关系。例如,如图6中所示,其中图4A中的节点div的带标签节点{<div>,[heading-attribute-value-list]}的孩子结构包含两个带标签节点:{<h3>,[heading-1]}和{<ul>,[attribute-value-list]},这两个节点有一个层级关系,即上下级层级关系。而对于图4A中的节点div的带标签节点{<div>,[attribute-value-list]}的孩子结构包含两个带标签节点:{<h3>,[attribute-value-pair]}和{<ul>,[attribute-value-list]},这两个节点在同一层级上。
如图6所示,在带标签节点图中,从带标签节点到它孩子结构中的每个带标签节点之间都有个链接。带标签节点和这些链接构成了带标签节点图。构造的带标签节点图的图结构有两个性质:
[1]是一个DAG(有向无环图);
[2]每个节点和它的子孙构成一个树结构。本领域技术人员应该理解,为了简洁,图6中仅示出了div节点的孩子节点,而未示出div节点的这些孩子节点本身的孩子节点的树结构。
在步骤S702的构造过程中,还需要计算每个候选孩子结构的分数,分数的计算需要考虑到至少以下五个要素之一:
1)带标签孩子节点的分数;例如,图6中所示的0.5、0.1和2.0。
2)同一层级的带标签孩子节点之间的相似度分数;同一层级的带标签孩子节点之间的相似度分数可以用已有的技术解决,例如,使用树的编辑距离(tree edit distance)等。
3)不同层级的带标签孩子节点之间的层级分数;
4)带标签孩子节点的布局分数。每种标签的孩子结构的标签布局给定一个分数。
5)更进一步,如果对于相同领域的对象已有一些之前抽取的属性值树,带标签节点的分数包含一个内容分数。内容分数基于带标签节点的文本内容和相同领域的对象已有的属性值的文本的相似度。
两个带标签孩子节点之间的层级分数可以通过这两个带标签孩子节点所对应的DOM节点的计算后信息得到。层级分数可以考虑以下几个因素:
1)两个DOM节点对应的DOM子树中的文本的平均字体大小的差
2)两个DOM节点对应的DOM子树中的文本的平均字体粗细的差
3)是不是两个DOM节点对应的DOM子树中的文本的颜色不同
4)是不是高层次的DOM节点在左,低层次的DOM节点在右
5)是不是高层次的DOM节点在上,低层次的DOM节点在下
以上每个因素可以化成一个实数值,层级分数可以由这些实数值的线性加权得到。
每个候选孩子结构的最终的分数是上述分数的线性加权。例如,如图6所示,其示意性示出了具有最大候选孩子结构的分数4.0的节点div的带标签节点{<div>,[heading-attribute-value-list]}的孩子结构,以及具有最大候选孩子结构的分数1.8的节点div的带标签节点{<div>,[attribute-value-list]}的孩子结构。
在执行完图7的步骤之后,对于每个带标签节点得到一个候选孩子结构,对于所有带标签节点形成一个带标签节点图。
图8示出了根据本发明实施例的图1的系统中的带标签节点图构造模块102的示意性实现方框图。
如图8所示,所述带标签节点图构造模块102包括:第一判定单元801,用于判断是否还有未处理的DOM节点;选择单元802,根据第一判定单元的结果,以如下顺序每次选择一个DOM节点进行处理:每次选中一个未处理的DOM叶节点或者是本身未处理但是每个孩子都是已处理节点的DOM节点;带标签节点列举单元803,用于对于选中的DOM节点,穷举该选中的DOM节点的可能的带标签节点;孩子结构构造单元804,对于带标签节点列举单元中列举的选中的DOM节点的每个带标签节点,构造当前处理的带标签节点的所有候选孩子结构,计算每个候选孩子结构的分数,并且选择分数最大的候选孩子结构作为当前处理的带标签节点的孩子结构,得到的最大分数记录为当前处理的带标签节点的分数;带标签节点图获得单元805,当第一判定单元判断所有的DOM节点处理完之后,得到带标签节点图,此图由带标签节点和选中的孩子结构构成。
图8中各个单元的具体实现与图7的方法流程类似,因此在此不再赘述。
3.带标签节点树的选择
图9描述了根据本发明实施例的带标签节点树的选择过程的流程图。此带标签节点树的选择过程构成了图1中的带标签节点树的选择模块。
给定步骤S302中生成的带标签节点图,带标签节点树的选择模块从带标签节点图中选择一些带标签节点树。
带标签节点图中分数最高的一个或多个带标签节点树会被选中。带标签节点树的选择过程可以描述如下:
1)从当前带标签节点图中选择分数最高的带标签节点(S901)。如果分数小于第一阈值MIN_SCORE,则结束(S902)。其中第一阈值是与分数设计相关的经验值。
2)得到选中的节点对应的带标签节点树,此带标签节点树由带标签节点的子孙带标签节点构成。输出带标签节点树(S903)。如果已经得到的带标签节点树的数目大于第二阈值M,则结束(S904)。其中第二阈值M是经验值,例如可以设置M=2。
3)得到选中的带标签节点树中含有的带标签节点所对应的DOM节点(S905)。从带标签节点图中去除得到的DOM节点所对应的其他带标签节点,并转向步骤S901(S906)。
在以上过程中,MIN_SCORE是预先指定的分数,代表选中的带标签节点树的带标签根节点需要达到的最小分数。M是一个预先指定的整数,代表了最大需要选取的带标签节点树的个数。
对于以上的带标签节点树的选择过程,下面以图6中所示的带标签节点图为例进行说明。但本领域技术人员应该理解,图6中仅仅示出了部分网页的部分带标签节点图。如图6所示,对于所示的带标签节点,在步骤S901和S902选择分数最高的带标签节点,即带标签节点{<div>,[heading-attribute-value-list]};在步骤S903和S904,输出上述带标签节点的带标签节点树,即由带标签节点{<div>,[heading-attribute-value-list]}、带标签节点{<h3>,[heading-1]}和带标签节点{<u1>,[attribute-value-list]}构成的带标签节点树;在步骤S905得到选中带标签节点{<div>,[heading-attribute-value-list]}对应的DOM节点,即图4A中的节点div;在步骤S906去除DOM节点div所对应的其他带标签节点,例如图6中所示的带标签节点{<div>,[attribute-value-list]}。
对于图6的带标签节点图进行图9后的上述处理后得到图10所示的带标签节点树。图10为根据本发明实施例的部分带标签节点树的示意图。
图11示出了根据本发明实施例的图1的系统中的带标签节点树选择模块103的示意性实现方框图。
如图11所示,带标签节点树选择模块103包括:第二选择单元1101,基于从所述带标签节点去除单元得到的带标签节点图,从当前带标签节点图中选择分数最高的带标签节点;第二判定单元1102,用于判断该选择的带标签节点的分数是否小于第一阈值;带标签节点树输出单元1103,当第二判定单元判断该选择的带标签节点的分数大于第一阈值时,得到选中的带标签节点对应的带标签节点树,并输出带标签节点树;第三判定单元1104,用于判断已经得到的带标签节点树的数目是否大于第二阈值;带标签节点去除单元1105,当第三判定单元判断已经得到的带标签节点树的数目小于第二阈值时,得到选中的带标签节点树中含有的带标签节点所对应的DOM节点,从带标签节点图中去除得到的DOM节点所对应的其他带标签节点。
虽然图11中示出了两个判定单元,但本领域技术人员应该理解,第二判定单元1102和第三判定单元1104也可以由一个判定单元实现。
图11中各个单元的具体实现与图9的方法流程类似,因此在此不再赘述。
4.属性值树的生成
给定步骤S303中得到的带标签节点树,属性值树的生成模块104生成结果属性值树。
一个属性值树包含多个概念节点。属性值树的每个概念节点都有一小段文本。每个概念叶节点代表一个对象属性的值。每个概念非叶节点代表不同级别的属性名。
图4C和图5B中已经显示了两个属性值子树的例子。在这里,图12中显示了另一个关于某数码相机的属性值树的示例。
图13描述了根据本发明实施例的属性值树的生成过程的流程图。此过程构成了图1中的属性值树的生成模块。
从步骤S303(带标签节点树的选择)中得到的每个带标签节点树对应于一个或多个属性值树。多个属性值树可以连向一个“辅助的概念根节点”(或称之为“概念根节点”)从而构成单个属性值树。引入辅助的概念根节点是为了简化算法的描述和多个属性值树的可视化。比如说,在图12中,辅助的概念根节点是指带文本串“(TOP)”的那个节点。去掉图12中的辅助的概念根节点后,会得到两个属性值子树。属性值树中的节点称作概念节点;标签节点图中的节点称作概念节点。
基于选中的带标签节点树构造属性值树,包含以下步骤:
(1)构造一个辅助的概念根节点。该辅助的概念根节点是用于将多个属性值树构成单个属性值树的根节点,这样构成的单个属性值树具有一个概念根节点。(S1301)
(2)对于每个选中的带标签节点树的带标签根节点,给定此带标签根节点和构造的概念父节点,构造部分属性值树。(S1302、S1303、S1304)
(3)以辅助的概念根节点为根节点将部分属性值树构造成单个属性值树。(S1305)同样,如果需要的话,也去掉概念根节点,可以得到一个或多个属性值树。
图14描述了图13中步骤S1303的详细实现过程的流程图。
图14描述了根据本发明实施例的针对选中的单个带标签节点树构造部分属性值树的过程。
根据本发明实施例的属性值树的构造过程是一个递归处理过程。在图14的步骤S1401中,对于一个带标签节点树,得到该带标签节点树的带标签根节点和它对应的一个概念父节点,以给定的概念父节点为根构造部分属性值子树。
在步骤S1402,判断该带标签根节点是否有孩子节点。
如果有,则顺序选择该带标签根节点的一个孩子节点(S1405),根据带标签根节点的孩子结构,得到当前选择的孩子节点对应的概念父节点(S1406),并针对以此孩子节点为根节点的带标签节点树,以当前孩子节点作为根节点和它对应的概念父节点为输入,递归地构造对应于此孩子节点的部分属性值子树(S1407)。
在步骤S1408,判断该带标签根节点还有未处理的孩子节点吗?如果有,则转到步骤S1405。如果没有,则返回到递归地调用当前属性值树构造过程的原步骤并继续执行下面的步骤。如果不存在递归地调用,则结束。
如果在步骤S1402判断该带标签根节点没有孩子节点,则在步骤S1403构造一个与该带标签根节点相对应的概念节点,该概念节点附带的文本串对应于带标签根节点的文本串。在步骤S1404把此概念节点加到给定的概念父节点的孩子集合中。然后返回到递归地调用当前属性值树构造过程的原步骤并继续执行下面的步骤。如果不存在递归地调用,则结束。
在上述构造过程中,步骤S1407是一个递归地调用步骤,其以选择的孩子节点为根节点和它对应的概念父节点为两个输入,重新开始图14所示的属性值树构造过程。
在以上构造过程的步骤S1406中,可能使用到当前带标签节点的孩子结构中的带标签节点之间的层级或者序列关系。例如,在图6中,在基于带标签节点{<div>,[heading-attribute-value-list]}对应的带标签节点树所构造的属性值树中,由于带标签节点{<h3>,[heading-1]}与带标签节点{<ul>,[attribute-value-list]}具有层级关系,因此,对应于{<h3>,[heading-1]}的概念节点是对应于{<ul>,[attribute-value-list]}的属性值子树的概念父节点。
图15示出了根据本发明实施例的图1的系统中的属性值树生成模块104的示意性实现方框图。
如图15所示,所述属性值树生成模块104包括:概念根节点构造单元1501,用于构造一个辅助的概念根节点;部分属性值树构造单元1502,用于对于每个选中的带标签节点树的带标签根节点,给定此带标签根节点和辅助的概念根节点,构造部分属性值树;属性值树获得单元1503,用于得到属性值树,其根节点为辅助的概念根节点,如果需要的话,去掉概念根节点,可以得到一个或多个属性值树。
图15各个单元的具体实现与图13的方法流程类似,因此在此不再赘述。
图16示出了根据本发明实施例的图15的属性值树生成模块104中的部分属性值树构造单元1502的示意性实现方框图。
如图16所示,所述部分属性值树构造单元1502包括:
输入值获取单元1601,对于一个带标签节点树,得到带标签根节点和它对应的概念父节点;第四判定单元1602,判断从输入值获取单元得到带标签根节点是否有孩子节点;概念节点构造单元1603,当第三判定单元判断给定带标签根节点没有孩子节点时,构造一个概念节点,并把此带标签根节点对应的文本串赋给此概念节点,把此概念节点加到得到的概念父节点的孩子集合,并返回到递归地调用当前部分属性值树构造单元的原部分属性值树构造单元并继续执行处理;如果不存在递归地调用,则结束;部分属性值子树递归构造单元1604,当第三判定单元判断给定带标签根节点有孩子节点时,顺序选择该带标签根节点的一个孩子节点;得到当前选择的孩子节点对应的概念父节点;并针对以此孩子节点为根节点的带标签节点树,递归地调用所述部分属性值树构造单元。
图16各个单元的具体实现与图14的方法流程类似,因此在此不再赘述。
如上所述,本发明提供了从含对象参数数据的网页中抽取对象属性值信息的方法和装置。本发明提出的方法可以基于网页DOM树信息和视觉信息来抽取属性值树。这种方法一个优点是可以最小化领域相关信息的使用,而领域知识需要人力的参与,这往往困难且代价昂贵。本发明提出的方法的另一个优点是可以抽取属性值树,而不仅仅是属性值对。属性往往拥有一个内在的层次结构。高层级的属性为低层级属性值提供了上下文信息,这些信息有助于信息集成和机器理解。
虽然结合目前被认为是最实际和最优的实施例描述了本发明,但本领域技术人员应当理解本发明不限于所公开的实施例,相反,本发明旨在覆盖所附权利要求的精神和范畴之内包括的各种各样的修改和等价结构。

Claims (18)

1.一种从网页中抽取对象属性值信息的方法,包括:
a)对于一个给定网页,得到与该给定网页对应的文档对象模型DOM树,并计算DOM树中的每个DOM节点的相关信息;
b)根据DOM树和每个DOM节点的相关信息,构造一个带标签节点图,并且计算每个带标签节点的分数;
c)基于带标签节点的分数,从得到的带标签节点图选择带标签节点树;
d)基于选中的带标签节点树构造属性值树;
其特征在于步骤b)进一步包括:
b1)以如下顺序选择一个DOM节点:每次选中一个未处理的DOM叶节点或者是本身未处理但是每个孩子都是已处理节点的DOM节点;
b2)对于选中的DOM节点,穷举该选中的DOM节点的可能的带标签节点,对于选中的DOM节点所对应的每个带标签节点:
构造当前处理的带标签节点的所有候选孩子结构,计算每个候选孩子结构的分数;并且
选择分数最大的候选孩子结构作为当前处理的带标签节点的孩子结构,得到的最大分数记录为当前处理的带标签节点的分数;
b3)判断是否还有未处理的DOM节点,如果有则转到步骤b1);
b4)如果所有的DOM节点处理完之后,得到带标签节点图,此图由带标签节点和选中的孩子结构构成。
2.根据权利要求1所述的方法,其中所述相关信息包括:1)以每个DOM节点为根节点的DOM子树中的DOM节点的名字、类型和值;2)以每个DOM节点为根节点的DOM子树的结构;3)以每个DOM节点为根节点的DOM子树中的DOM节点的视觉信息。
3.根据权利要求1所述的方法,其中,带标签节点图由多个带标签节点构成,给定的网页中每个DOM节点对应于多个带标签节点,而且每个带标签节点包含一个标签和一个分数,标签代表了以DOM节点为根节点的DOM子树的一个分类。
4.根据权利要求1所述的方法,其中每个候选孩子结构包含对应于当前考虑的DOM节点的DOM子孙节点的一个或多个带标签节点;候选孩子结构中的带标签节点是序列关系或者层级关系;在带标签节点图中,从带标签节点到它孩子结构中的每个带标签节点之间都有个链接。
5.根据权利要求4所述的方法,其中,每个候选孩子结构的分数的计算是对如下五个要素的一个或多个的线性加权:1)带标签孩子节点的分数;2)同一层级的带标签孩子节点之间的相似度分数;3)不同层级的带标签孩子节点之间的层级分数;4)带标签孩子节点的布局分数;5)如果对于相同领域的对象已有一些之前抽取的属性值树,则可以进一步包含内容分数。
6.根据权利要求1所述的方法,步骤c)进一步包括:
c1)从当前带标签节点图中选择分数最高的带标签节点;
c2)判断该分数是否小于第一阈值;如果是,则结束;
c3)如果该分数大于第一阈值,则得到选中的带标签节点对应的带标签节点树,并输出带标签节点树;
c4)判断已经得到的带标签节点树的数目是否大于第二阈值,如果是,则结束;
c5)如果已经得到的带标签节点树的数目是否小于第二阈值,则得到选中的带标签节点树中含有的带标签节点所对应的DOM节点,从带标签节点图中去除得到的DOM节点所对应的其他带标签节点,并转向步骤c1)。
7.根据权利要求1所述的方法,其中一个属性值树包含多个概念节点;属性值树的每个概念节点都有一小段文本,每个概念叶节点代表一个对象属性的值;每个概念非叶节点代表不同级别的属性名。
8.根据权利要求7所述的方法,步骤d)进一步包括:
d1)构造一个辅助的概念根节点;
d2)对于每个选中的带标签节点树的带标签根节点,给定此带标签根节点和辅助的概念根节点,构造部分属性值树;
d3)得到属性值树,其根节点为辅助的概念根节点,如果需要的话,去掉概念根节点,可以得到一个或多个属性值树。
9.根据权利要求8所述的方法,步骤d2)进一步包括:
d21)对于一个带标签节点树,得到带标签根节点和它对应的概念父节点;
d22)判断该带标签根节点是否有孩子节点;
d23)如果给定带标签根节点没有孩子节点,则构造一个概念节点,并把此带标签根节点对应的文本串赋给此概念节点,把此概念节点加到给定的概念父节点的孩子集合,并返回到递归地调用当前属性值树构造过程d2)的原步骤并继续执行下面的步骤;如果不存在递归地调用,则结束;
d24)如果给定带标签根节点有孩子节点,则顺序选择该带标签根节点的一个孩子节点;得到当前选择的孩子节点对应的概念父节点;并针对以此孩子节点为根节点的带标签节点树,递归地调用对应于此孩子节点的部分属性值子树的构造构成d2);
d25)判断带标签根节点是否还有未处理的孩子节点,如果有则转到步骤d24);否则,返回到递归地调用当前属性值树构造过程d2)的原步骤并继续执行下面的步骤;如果不存在递归地调用,则结束。
10.一种从网页中抽取对象属性值信息的系统,包括:
网页预处理模块,对于一个给定网页,得到与该给定网页对应的DOM树,并计算DOM树中的每个DOM节点的相关信息;
带标签节点图构造模块,用于根据DOM树和每个DOM节点的相关信息,构造一个带标签节点图,并且计算每个带标签节点的分数;
带标签节点树选择模块,用于基于带标签节点的分数,从得到的带标签节点图选择带标签节点树;
属性值树生成模块,用于基于选中的带标签节点树构造属性值树;
其特征在于所述带标签节点图构造模块进一步包括:
第一判定单元,用于判断是否还有未处理的DOM节点;
第一选择单元,根据第一判定单元的结果,以如下顺序每次选择一个DOM节点进行处理:每次选中一个未处理的DOM叶节点或者是本身未处理但是每个孩子都是已处理节点的DOM节点;
带标签节点列举单元,用于对于选中的DOM节点,穷举该选中的DOM节点的可能的带标签节点;
孩子结构构造单元,对于带标签节点列举单元中列举的选中的DOM节点的每个带标签节点,构造当前处理的带标签节点的所有候选孩子结构,计算每个候选孩子结构的分数,并且选择分数最大的候选孩子结构作为当前处理的带标签节点的孩子结构,得到的最大分数记录为当前处理的带标签节点的分数;
带标签节点图获得单元,当第一判定单元判断所有的DOM节点处理完之后,得到带标签节点图,此图由带标签节点和选中的孩子结构构成。
11.根据权利要求10所述的系统,其中所述相关信息包括:1)以每个DOM节点为根节点的DOM子树中的DOM节点的名字、类型和值;2)以每个DOM节点为根节点的DOM子树的结构;3)以每个DOM节点为根节点的DOM子树中的DOM节点的视觉信息。
12.根据权利要求10所述的系统,其中,带标签节点图由多个带标签节点构成,给定的网页中每个DOM节点对应于多个带标签节点,而且每个带标签节点包含一个标签和一个分数,标签代表了以DOM节点为根节点的DOM子树的一个分类。
13.根据权利要求10所述的系统,其中每个候选孩子结构包含对应于当前考虑的DOM节点的DOM子孙节点的一个或多个带标签节点;候选孩子结构中的带标签节点是序列关系或者层级关系;在带标签节点图中,从带标签节点到它孩子结构中的每个带标签节点之间都有个链接。
14.根据权利要求13所述的系统,其中,每个候选孩子结构的分数的计算是对如下五个要素的一个或多个的线性加权:1)带标签孩子节点的分数;2)同一层级的带标签孩子节点之间的相似度分数;3)不同层级的带标签孩子节点之间的层级分数;4)带标签孩子节点的布局分数;5)如果对于相同领域的对象已有一些之前抽取的属性值树,则可以进一步包含内容分数。
15.根据权利要求10所述的系统,所述带标签节点树选择模块进一步包括:
第二选择单元,基于从所述带标签节点去除单元得到的带标签节点图,从当前带标签节点图中选择分数最高的带标签节点;
第二判定单元,用于判断该选择的带标签节点的分数是否小于第一阈值;
带标签节点树输出单元,当第二判定单元判断该选择的带标签节点的分数大于第一阈值时,得到选中的带标签节点对应的带标签节点树,并输出带标签节点树;
第三判定单元,用于判断已经得到的带标签节点树的数目是否大于第二阈值;
带标签节点去除单元,当第三判定单元判断已经得到的带标签节点树的数目小于第二阈值时,得到选中的带标签节点树中含有的带标签节点所对应的DOM节点,从带标签节点图中去除得到的DOM节点所对应的其他带标签节点。
16.根据权利要求10所述的系统,其中一个属性值树包含多个概念节点;属性值树的每个概念节点都有一小段文本,每个概念叶节点代表一个对象属性的值;每个概念非叶节点代表不同级别的属性名。
17.根据权利要求16所述的系统,所述属性值树生成模块进一步包括:
概念根节点构造单元,用于构造一个辅助的概念根节点;
部分属性值树构造单元,用于对于每个选中的带标签节点树的带标签根节点,给定此带标签根节点和辅助的概念根节点,构造部分属性值树;
属性值树获得单元,用于得到属性值树,其根节点为辅助的概念根节点,如果需要的话,去掉概念根节点,可以得到一个或多个属性值树。
18.根据权利要求17所述的系统,所述部分属性值树构造单元进一步包括:
输入值获取单元,对于一个带标签节点树,得到带标签根节点和它对应的概念父节点;
第四判定单元,判断从输入值获取单元得到带标签根节点是否有孩子节点;
概念节点构造单元,当第三判定单元判断给定带标签根节点没有孩子节点时,构造一个概念节点,并把此带标签根节点对应的文本串赋给此概念节点,把此概念节点加到得到的概念父节点的孩子集合,并返回到递归地调用当前部分属性值树构造单元的原部分属性值树构造单元并继续执行处理;如果不存在递归地调用,则结束;
部分属性值子树递归构造单元,当第三判定单元判断给定带标签根节点有孩子节点时,顺序选择该带标签根节点的一个孩子节点;得到当前选择的孩子节点对应的概念父节点;并针对以此孩子节点为根节点的带标签节点树,递归地调用所述部分属性值树构造单元。
CN201110047574.0A 2011-02-28 2011-02-28 一种从网页中抽取对象属性值信息的方法和系统 Active CN102650999B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110047574.0A CN102650999B (zh) 2011-02-28 2011-02-28 一种从网页中抽取对象属性值信息的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110047574.0A CN102650999B (zh) 2011-02-28 2011-02-28 一种从网页中抽取对象属性值信息的方法和系统

Publications (2)

Publication Number Publication Date
CN102650999A CN102650999A (zh) 2012-08-29
CN102650999B true CN102650999B (zh) 2015-08-05

Family

ID=46693007

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110047574.0A Active CN102650999B (zh) 2011-02-28 2011-02-28 一种从网页中抽取对象属性值信息的方法和系统

Country Status (1)

Country Link
CN (1) CN102650999B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104166653B (zh) * 2013-05-17 2017-10-31 北京百度网讯科技有限公司 网站的三元组挖掘方法以及三元组挖掘装置
WO2015117267A1 (en) * 2014-02-07 2015-08-13 Google Inc. Systems and methods for automatically creating content modification scheme
CN106326314B (zh) * 2015-07-07 2020-09-29 腾讯科技(深圳)有限公司 网页信息抽取方法及装置
CN106021432B (zh) * 2016-05-16 2019-01-25 杭州本构科技有限公司 基于颜色识别的互动内容转化方法
CN106126645A (zh) * 2016-06-24 2016-11-16 浪潮软件股份有限公司 一种提高web页面渲染性能的装置
CN108804469B (zh) * 2017-05-04 2021-10-29 腾讯科技(深圳)有限公司 一种网页识别方法以及电子设备
CN110245329A (zh) * 2018-03-07 2019-09-17 珠海金山办公软件有限公司 文本管理方法、装置、电子设备及计算机可读存储介质
CN109343845A (zh) * 2018-08-14 2019-02-15 北京奇艺世纪科技有限公司 一种代码文件生成方法和装置
CN109491727A (zh) * 2018-10-16 2019-03-19 深圳壹账通智能科技有限公司 对象序列化方法、终端设备及计算机可读存储介质
CN110222319A (zh) * 2019-06-19 2019-09-10 北京百度网讯科技有限公司 用于挖掘数据的方法和装置
CN110688531B (zh) * 2019-08-26 2022-08-26 北京旷视科技有限公司 树组件渲染方法和装置、数据处理设备及介质
CN111651701A (zh) * 2020-06-05 2020-09-11 厦门理工学院 一种物联网大数据窗口浏览系统
CN113688207B (zh) * 2021-08-24 2023-11-17 思必驰科技股份有限公司 基于网络的结构阅读理解的建模处理方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101251855A (zh) * 2008-03-27 2008-08-27 腾讯科技(深圳)有限公司 一种互联网网页清洗方法、系统及设备
CN101477571A (zh) * 2009-01-07 2009-07-08 华天清 网络内容语义结构标注的方法和装置
CN101501684A (zh) * 2006-08-16 2009-08-05 微软公司 包装器生成和模板检测的联合优化

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101501684A (zh) * 2006-08-16 2009-08-05 微软公司 包装器生成和模板检测的联合优化
CN101251855A (zh) * 2008-03-27 2008-08-27 腾讯科技(深圳)有限公司 一种互联网网页清洗方法、系统及设备
CN101477571A (zh) * 2009-01-07 2009-07-08 华天清 网络内容语义结构标注的方法和装置

Also Published As

Publication number Publication date
CN102650999A (zh) 2012-08-29

Similar Documents

Publication Publication Date Title
CN102650999B (zh) 一种从网页中抽取对象属性值信息的方法和系统
CN103491205B (zh) 一种基于视频搜索的关联资源地址的推送方法和装置
CN100565523C (zh) 一种基于多分类器融合的敏感网页过滤方法及系统
Akpınar et al. Vision based page segmentation algorithm: Extended and perceived success
CN107133345A (zh) 基于人工智能的交互方法和装置
CN110175325A (zh) 基于词向量和句法特征的评论分析方法及可视化交互界面
CN111488931A (zh) 文章质量评估方法、文章推荐方法及其对应的装置
CN107590219A (zh) 网页人物主题相关信息提取方法
CN106021383A (zh) 网页相似度计算方法及装置
CN102646095B (zh) 一种基于网页分类信息的对象分类方法和系统
WO2012054788A1 (en) Method and system for performing a comparison
CN105786977A (zh) 基于人工智能的移动搜索方法和装置
CN107301199A (zh) 一种数据标签生成方法和装置
CN106503212A (zh) 一种网页元素样式的设置方法及装置
CN104376114B (zh) 一种搜索结果展示方法及装置
CN109033282A (zh) 一种基于抽取模板的网页正文抽取方法及装置
Salah et al. Combining cultural analytics and networks analysis: Studying a social network site with user-generated content
CN109101476A (zh) 一种词向量生成、数据处理方法和装置
CN104331438A (zh) 对小说网页内容选择性抽取方法和装置
CN105117434A (zh) 一种网页分类方法和系统
Xu et al. Identifying semantic blocks in Web pages using Gestalt laws of grouping
CN115391570A (zh) 一种基于方面的情感知识图谱构建方法及装置
CN114491325A (zh) 网页数据的提取方法和装置、计算机设备、存储介质
CN107145591A (zh) 一种基于标题的网页有效元数据内容提取方法
CN104572874B (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