CN101944094B - 网页信息提取方法和装置 - Google Patents

网页信息提取方法和装置 Download PDF

Info

Publication number
CN101944094B
CN101944094B CN200910158803.9A CN200910158803A CN101944094B CN 101944094 B CN101944094 B CN 101944094B CN 200910158803 A CN200910158803 A CN 200910158803A CN 101944094 B CN101944094 B CN 101944094B
Authority
CN
China
Prior art keywords
node
webpage
tree structure
template
object model
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.)
Expired - Fee Related
Application number
CN200910158803.9A
Other languages
English (en)
Other versions
CN101944094A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to CN200910158803.9A priority Critical patent/CN101944094B/zh
Publication of CN101944094A publication Critical patent/CN101944094A/zh
Application granted granted Critical
Publication of CN101944094B publication Critical patent/CN101944094B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了网页信息提取方法和装置。所述方法包括:获取网站中的网页的源代码;根据所获取的源代码来建立所述网页的文档对象模型树结构,所述网页的文档对象模型树结构包括一个或多个节点;获取所述网站的至少一个模板,所述模板是文档对象模型树结构的;从所述模板中选择要抽取内容的路径信息;以及将所述要抽取内容的路径信息与所述网页的文档对象模型树结构中的各节点进行匹配,如果匹配成功,则提取所述网页中的与所述路径信息对应的内容信息。

Description

网页信息提取方法和装置
技术领域
本发明涉及信息提取,具体地,涉及一种网络网页信息提取方法和装置。
背景技术
随着因特网和电子技术的飞速发展,人们不再受地域的限制,可以方便的在网上交换各种各样的信息。在大量用户的参与之下,网站的网页中(比如论坛)存在大量的有用信息,这些信息不管对于个人,而且对于企业都有很好的使用价值。但是这些信息的发布存在很大的随意性。网站的网页中既包含有用信息,也包含大量的干扰信息,例如广告等。真正有用的信息往往会淹没在这些干扰信息中。
目前,一种提取网页信息的方法是通用的自动文本搜索技术。这种技术对网页的具体内容进行分类,然后利用文本匹配的方式来判断是否包含有用内容。但这种文本搜索方法无法精确地查找到提取诸如发帖人、发帖标题和发帖人等信息。另一种常见的提取网页信息的方法是采用人工的方式去挑选、查找有用或相关信息。
发明内容
在下文中给出关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,这个概述并不是关于本发明的穷举性概述。它并不是意图确定本发明的关键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
根据本发明的一个方面,提供了一种网页信息提取方法。所述方法包括:网页获取步骤:获取网站中的网页的源代码;网页树结构建立步骤:根据所获取的源代码来建立所述网页的文档对象模型树结构,所述网页的文档对象模型树结构包括一个或多个节点;论坛模板获取步骤:获取所述网站的至少一个文档对象模型树结构模板;路径选择步骤:从所述文档对象模型树结构模板中选择要抽取内容的路径信息;路径匹配步骤:将所述要抽取内容的路径信息与所述网页的文档对象模型树结构中的各节点进行匹配,如果匹配成功,则根据所述路径信息来提取所述网页中的相应的内容信息。
根据本发明的另一方面,提供了一种网页信息提取装置,该装置包括:网页获取模块:被配置用于获取网站中的网页的源代码;网页树结构建立模块,被配置用于根据所述网页获取模块所获取的网页的源代码来建立所述网页的文档对象模型树结构,所述网页的文档对象模型树结构包括一个或多个节点;模板获取模块,被配置用于获取至少一个文档对象模型树结构模板;路径选择模块,被配置用于从所述文档对象模型树结构模板中选择要抽取内容的路径信息;及路径匹配模块,被配置用于将所述路径信息与所述网页的文档对象模型树结构中的各节点进行匹配,如果匹配成功,则根据所述路径信息来提取所述网页中的相应的内容信息。
另外,本发明的实施例还提供了用于实现上述检测视频图像中的目标的方法的计算机程序。
此外,本发明的实施例还提供了至少计算机可读介质形式的计算机程序产品,其上记录有用于实现上述检测视频图像中的目标的方法的计算机程序代码。
附图说明
参照下面结合附图对本发明实施例的说明,会更加容易地理解本发明的以上和其它目的、特点和优点。附图中的部件只是为了示出本发明的原理。在附图中,相同的或类似的技术特征或部件将采用相同或类似的附图标记来表示。
图1是示出了根据本发明的一个实施例的网页信息提取方法的示意性流程图;
图2是示出了根据本发明另一实施例的网页信息提取方法的示意性流程图;
图3示出了建立网站的文档对象模型(DOM)树结构模板的一个示例;
图4是示出了根据本发明另一实施例的网页信息提取方法的示意性流程图;
图5是示出了根据本发明另一实施例的网页信息提取方法的示意性流程图;
图6是示出了路径信息绝对匹配的示例性流程图;
图7是示出了根据本发明另一实施例的网页信息提取方法的示意性流程图;
图8是示出了路径信息相似匹配的一个应用示例的示意性流程图;
图9是示出了公共路径信息匹配的一个应用示例的示意性流程图;
图10-13是示出了根据本发明实施例的网页信息提取装置的示意性框图;
图14是示出了根据本发明实施例的网页信息提取装置中的模板生成模块的示意性框图;
图15是示出了可用于实施根据本发明实施例的计算机的示意性框图;以及
图16是示出了用于网页的DOM树结构中的节点选择的界面的一个示例。
具体实施方式
下面参照附图来说明本发明的实施例。在本发明的一个附图或一种实施方式中描述的元素和特征可以与一个或更多个其它附图或实施方式中示出的元素和特征相结合。应当注意,为了清楚的目的,附图和说明中省略了与本发明无关的、本领域普通技术人员已知的部件和处理的表示和描述。
图1是示出了根据本发明的一个实施例的网页信息提取方法的示意性流程图。
如图1所示,该网页信息提取方法可包括以下步骤102-110。
在步骤102中,获取网站中的网页的源代码。在步骤104中,根据所获取网页的源代码来建立所述网页的文档对象模型(Document ObjectModel,DOM)树结构。
在一个示例中,所述网站中的网页可以指网站中论坛的网页。在获取论坛的某个网页的源代码之后,对所述网页进行解析从而建立其DOM树。在另一示例中,所述网站中的网页还可以是其他具有大量结构化信息的网页,比如包括产品目录等信息的网页。
在一个示例中,可以根据论坛的编号,从与网站相关的数据库中获取论坛中的网页的编号,然后根据该网页的编号来获取网页的源代码(如HTML格式的源代码)。所述的网页的编号可以唯一地标识该网页,例如可以是一个64位整数。网页的编号中的不同的二进制位组合可以用于表示该网页所属的论坛、网页在论坛中的主题号、网页在当前主题下的页号等等信息。
在一个示例中,可以通过网页下载程序实时地下载网页的源代码。在另一示例中,还可以将下载的网页的源代码形成一个临时的网页文件(例如HTML格式的)预存在存储装置(例如计算机硬盘)中。在一个示例中,还可以对所获取的网页进行过滤,以滤除无用图片等干扰信息,从而只保留网页主体部分,网页的主体部分的源代码。
所述网页的源代码可以是HTML格式的。通过解析网页的源代码,可以利用DOM技术来建立网页的DOM树结构,这里不对其具体过程作详细描述。网页的DOM树结构中可以包括一个或多个节点。
在步骤106中,获取所述网站的至少一个DOM树结构模板。
由于网站中某种类型的网页(比如论坛网页、包括产品目录等信息的网页等等)具有相似的结构,因此可以针对这一类型的网页建立相应的一个或多个模板。
在一个示例中,可以利用DOM技术来建立某种类型的网页的DOM树结构,从而形成针对该类型的网页的模板。所述模板中可以包括相应的DOM树结构中一个或多个节点的路径信息。节点的路径信息可以包括有关从相应的DOM树结构的根节点到该节点的路径的信息,具体而言,包括从所述根节点到达该节点要经过的各节点的属性信息。在一个示例中,节点的属性信息可以包括节点的名称(如标签)、顺序号等。所述顺序号指示该节点在相应的DOM树结构中的位置。在一个示例中,所述顺序号可以指示该节点在相应的DOM树结构的所属层中的位置。
在一个示例中,所述模板可以是针对网站的论坛而建立的,可以包括该论坛中以下内容的路径信息:主帖区、发帖人、发帖日期、发帖题目、发帖内容和发帖标题、第一个回帖的回帖区、回帖人、回帖日期、回帖题目、回帖内容和回帖标题等。在实际应用中,这些内容可以根据需要来选择,此处不一一列举。
在一个示例中,针对论坛而建立的模板还可以包括两种:与包含主贴和回贴的网页对应的模板以及与仅包含回贴的网页对应的模板。在抽取论坛网页中的信息时,可以根据网页的内容来选择不同的模板。
在一个示例中,所建立的模板可以是XML(Extensible MarkupLanguage,可扩展标记语言)文件格式的。模板中的每个要抽取内容的路径信息可以一个字符串,该字符串由标识DOM树层次结构的结构数组组成,所述结构数组可以包括节点的名称(如标签)和顺序号等属性信息。在一个示例中,各节点的顺序号可以从零开始,依次指向顺序号的值加一后所对应的节点。
在步骤108中,从所获取的DOM树结构模板中选择要抽取内容的路径信息。在步骤110中,将所述要抽取内容的路径信息与所述网页的文档对象模型树结构中的各节点进行匹配。如果匹配成功,则根据所述路径信息来提取所述网页中的相应的内容信息。
在上述的网页信息提取方法中,使用专门形成的模板来提取某类网页中的信息。这种方法可以有针对性地准确提取网页中的有用信息,从而减少干扰信息的影响。
在一个示例中,网站的模板可以存储在数据库中,可以从该数据库中获取相应网站的模板。
在一个实施例中,所述网页信息提取方法还可以包括一个模板生成步骤。图2示出了根据该实施例的方法的示意性流程图。图2所示的步骤202-210与图1中所示的步骤102-110相似,这里不再赘述。图2中所示的方法中还包括模板生成步骤201。在步骤201中,建立网站的DOM树结构模板。图3是示出了模板生成步骤201的一个示例性流程图。
如图3所示,步骤201可以包括如下步骤:
在步骤201-1中,获取所述网站的一个或多个网页的源代码。
这里所谓的“一个或多个网页”可以是网站中具有某种类似结构的网页,例如论坛网页、包括产品目录的网页以及其他结构化的网页等。为了所建立模板的准确性,通常要使用多个网页的源代码。可以对所获取的网页进行过滤,以滤除无用图片等干扰信息,从而只保留网页主体中的文本信息。
在步骤201-2中,建立各网页的DOM树结构。具体而言,利用DOM技术来解析每个所获取的网页,从而建立每个网页的DOM树结构。在步骤201-3中,选择各网页的DOM树结构中的一个或多个节点。具体而言,在各网页的DOM树结构中选择要抽取的内容所对应的节点。
在一个示例中,可以按照一定的算法自动地在DOM树中选择节点。在另一示例中,还可以利用人机界面由用户来选择节点。图16示出了一个由用户来选择节点的示例性界面。用户可以通过输入装置(例如键盘、鼠标等)来在界面上输入选择。根据用户所选择的内容来选择DOM树结构中的对应的一个或多个节点。
选择节点的原则可以包括:路径尽可能短,能够包括完整的节点内容,并且不包括太多的干扰信息。
在步骤201-4中,从相应的DOM树结构中提取所选择的节点的路径信息。在一个示例中,节点的路径信息可以是字符串形式的。
在步骤201-5中,保存所选择各节点的路径信息,从而生成所述模板。当生成了所有所选择节点的路径信息后,根据这些节点的路径信息即可生成所述模板。
图4示出了根据本发明另一实施例的网页信息提取方法的示意性流程图。如图4所示,该方法包括步骤402、404、406、408和410。这些步骤402、404、406、408和410与图1所示的步骤102、104、106、108和110相似,这里不再重复。除上述步骤之外,图4所示的方法还包括一个节点数据结构建立步骤409。在步骤409中,从在步骤404中建立的所述网页的DOM树结构中获取每个节点及其相关信息,并按照一定的数据结构进行存储,供后面的路径匹配步骤410使用。所述数据结构可以包括:节点的属性信息、父节点的属性信息、第一个子节点的属性信息、下一兄弟节点的属性信息等。
利用这样的数据结构,可以方便地得到一个节点的父亲节点、兄弟节点和子节点,有利于后续的路径匹配和/或遍历等。
在一个实施例中,所述路径匹配步骤还可以包括一个绝对匹配步骤。图5示出了根据该实施例的网页信息提取方法的示例性流程图。在图5中,步骤502-508与图1所示的步骤102-108相似,这里不再重复。在步骤510中,遍历所述网页的DOM树结构,将要抽取内容的路径信息与所述网页的DOM树结构中的各个节点进行匹配,并返回所述路径信息中最后的匹配节点在所述网页的DOM树结构中的位置。如果最后的匹配节点是所述路径信息中的最后一个节点,则绝对匹配成功,可以根据该路径信息来提取网页中相应的内容。否则说明绝对匹配不成功。
在一个示例中,可以根据要抽取内容的路径信息中的每个节点的属性信息(如名称与顺序号等)来搜索所述网页的DOM树结构中相应的节点。图6示出了利用节点的名称和顺序号来进行绝对路径匹配的一个示例。如图6所示,在步骤610-1中,获取要抽取内容的路径信息中的第一个节点。在步骤610-2中,将第一个节点与网页的DOM树结构中的相应层中的各节点进行比较。在步骤610-3和步骤610-4中,分别比较第一个节点的名称和顺序号是否与各节点的名称和顺序号相同。如果二者均相同,则说明第一个节点的匹配成功,在步骤610-5中,判断路径信息中是否还有下一节点,如果有,则在步骤610-6中对下一节点进行匹配。否则,说明绝对匹配不成功。在路径信息中的所有节点匹配成功后,可以根据该路径信息来提取网页中相应的内容。
在一个示例中,当对路径信息中某个节点的名称和顺序号进行绝对匹配时,还可以首先利用该节点的名称来找出所述网页的DOM树结构中相应层中所有名称相同的节点,然后在所有名称相同的节点中找出与该节点的顺序号相同的节点。依次类推,直到完成路径信息中所有节点的匹配。
在一个实施例中,所述路径匹配步骤还可以包括一个相似匹配步骤。图7示出了根据该实施例的网页信息提取方法的示例性流程图。在图7中,步骤702-708与图5所示的步骤602-608相似,这里不再重复。在步骤710中,遍历所述网页的DOM树结构,将要抽取内容的路径信息与所述网页的DOM树结构中的各个节点进行绝对匹配,并返回所述路径信息中最后的匹配节点在所述网页的DOM树结构中的位置。在步骤712中,判断最后的匹配节点是否所述路径信息中的最后一个节点,如果是,则说明绝对匹配成功,可以根据该路径信息来提取网页中相应的内容。否则说明绝对匹配不成功,可以执行下一步骤714。在步骤714中,判断所述最后的匹配节点是否存在适用的相邻兄弟节点,如果没有,则结束匹配。如果有,则在步骤716中,将所述最后的匹配节点修改为其某个相邻兄弟节点,然后重复执行步骤710对所述网页的DOM树结构进行遍历,寻找与该兄弟节点匹配的节点。如果找到,则说明匹配成功,可以进行路径信息中下一节点的匹配。否则,再次执行步骤712和716对路径信息中的节点进行修改,并再次重复执行步骤710。当路径信息中的所有节点匹配成功后,可以根据修改后的路径信息(其中包括修改的节点)来提取所述网页中的相应内容。
在一个示例中,可以通过比较要抽取内容的路径信息中的每个节点的属性信息(如名称与顺序号等)来进行路径的相似匹配。图8示出了利用节点的名称和顺序号来进行路径相似匹配的一个具体示例。如图8所示,步骤810即绝对匹配步骤,与图7中的步骤710相似,这里不再重复。在步骤812中,判断最后的匹配节点是否所述路径信息中的最后一个节点,如果是,则说明绝对匹配成功,可以根据该路径信息来提取网页中相应的内容。否则说明绝对匹配不成功,可以执行下一步骤814。在步骤814中,计算探测步长Step。例如,可以根据所述最后的匹配节点的下一节点的顺序号及其相邻的各兄弟节点中与其同名的兄弟节点的顺序号来计算所述探测步长Step。例如,设所述最后的匹配节点的下一节点的顺序号为i,与其同名的一个相邻兄弟节点的顺序号为j,则探测步长可以取i和j的差值的3倍,即Step=3×|i-j|。当然,这里给出的探测步长的计算方法仅仅是一个示例,在实际应用中,可以选择其他的探测步长。例如,可以选择i和j的差值的N倍(N≥1)。本发明不对此作任何限制。在步骤816中,将所述最后的匹配节点的下一节点(设顺序号为i)修改为某个兄弟节点(设顺序号为k)。在步骤817中,判断该兄弟节点的顺序号k与i的差是否超过所述探测步长,即判断|i-k|>Step是否成立。如果超过,则结束匹配。如果没有超过,则执行步骤810,根据该兄弟节点的名称和顺序号,在所述网页的DOM树结构中寻找与其名称和顺序号完全相同的节点。如果找到,则匹配成功,可以进行路径信息中下一节点的匹配。当路径信息中的所有节点匹配成功后,可以根据修改后的路径信息(其中包括修改的节点)来提取所述网页中的相应内容。否则,说明相似匹配不成功。
在一个示例中,在DOM树结构的某些特定层中,节点(标签)的顺序号可能不用来指示节点的位置。假设路径信息中的节点A对应某个特定层,当在这些特定层中进行匹配时,可以用路径信息中的节点A的名称(标签)与所述网页的DOM树结构的同一层中的各节点的名称(标签)进行比较,找到该层中所有名称(标签)相同的节点。将所有这些名称相同的节点中的每个节点作为候选节点,相应的路径作为候选路径,之后再对要抽取内容的路径信息中的节点A的下一节点进行匹配,依此类推,直到从多个候选路径中找到正确的路径。而在DOM树结构的其他层中,可以首先利用要抽取内容的路径信息中的对应节点的名称来找出所述网页的DOM树结构中相应层中所有名称相同的节点,然后在所有名称相同的节点中找出与该相应节点的顺序号相同的节点。依次类推,直到完成路径信息中所有节点的匹配。
在一个示例中,所述特定层可以是指论坛网页的主贴区与回帖区所拥有的相同节点中最后一个节点的下一层。这一层用来区分不同的回帖区,在不同的回帖区中,路径结构是相同的。
在一个实施例中,所述要抽取内容的路径信息可以包括公共路径信息。例如,在所获取的网页是论坛网页的情况下,所述公共路径信息可以包括所述论坛的发帖区的路径(即模板的从根节点到发帖区的各个节点)和所述论坛的回贴区的路径(即模板的从根节点到回帖区的各个节点)。
在一个示例中,在进行路径匹配时,可以首先进行公共路径的匹配。图9示出了进行公共路径匹配的一个示例。如图9所示,在步骤902中,从要抽取内容的路径信息中获取公共路径信息。在步骤904,对公共路径信息中的各个节点进行绝对匹配(与前述实施例中的绝对匹配方法相似,这里不再重复)。在步骤906中,判断绝对匹配是否成功,例如判断最后的匹配节点是否公共路径信息中的最后一个节点。如果是,则说明绝对匹配成功,当前的公共路径信息是正确的。否则,绝对匹配不成功,执行步骤908。在步骤908中,对公共路径信息进行相似匹配(与前述实施例中的相似匹配方法相似,这里不再重复)。在步骤910中,判断相似匹配是否成功,例如判断最后的匹配节点是否公共路径信息中的最后一个节点。如果是,则说明相似匹配成功,当前的公共路径信息是正确的。否则,相似匹配不成功,说明公共路径匹配失败,当前公共路径信息不正确,可以选择新的模板或者修改模板。
在一个示例中,可以首先对路径信息中的公共路径进行匹配。如果公共路径匹配成功,则在进行后续的其他要抽取内容的路径信息匹配时,可以跳过该公共路径,而直接进行公共路径后面各节点的匹配,这样可以加快匹配的速度。
图10示出了根据本发明一实施例的网页信息提取装置的示意性框图。如图10所示,该网页信息提取装置可以包括网页获取模块1001、网页树结构建立模块1002、模板获取模块1003、路径选择模块1004和路径匹配模块1005。
网页获取模块1001可以被配置用于获取网站中的网页的源代码。
在一个示例中,还可以对所获取的网页进行过滤,以滤除无用图片等干扰信息,从而只保留网页主体部分,网页的主体部分的源代码。在一个示例中,所述网站中的网页可以指网站中论坛的网页。在另一示例中,所述网站中的网页还可以是其他具有大量结构化信息的网页,比如包括产品目录等信息的网页。
上文中已描述了获取网页源代码的各种示例,这里不再重复。应理解,所描述的各个示例均是示例性的,本发明不限于此。
网页树结构建立模块1002可以被配置用于根据所述网页获取模块所获取的网页的源代码来建立所述网页的DOM树结构。
所述网页的源代码可以是HTML格式的。通过解析网页的源代码,可以利用DOM技术来建立网页的DOM树结构,这里不对其具体过程作详细描述。网页的DOM树结构中可以包括一个或多个节点。
模板获取模块1003可以被配置用于获取网站的至少一个DOM树结构模板。路径选择模块1004可以被配置用于从所述DOM树结构模板中选择要抽取内容的路径信息。
在一个示例中,模板获取模块所获取的模板中可以包括相应的DOM树结构中一个或多个节点的路径信息。节点的路径信息可以包括有关从相应的DOM树结构的根节点到该节点的路径的信息,具体而言,包括从所述根节点到达该节点要经过的各节点的属性信息。在一个示例中,节点的属性信息可以包括节点的名称(如标签)、顺序号等。所述顺序号指示该节点在相应的DOM树结构中的位置。路径选择模块1004所获取的要抽取内容的路径信息可以包括从所述文档对象模型树结构模板的根节点到达所述要抽取内容所对应的节点要经过的各节点的属性信息。
路径匹配模块1005可以被配置用于将所述路径信息与所述网页的文档对象模型树结构中的各节点进行匹配,如果匹配成功,则根据所述路径信息来提取所述网页中的相应的内容信息。
上述的网页信息提取装置使用专门形成的模板来提取某类网页中的信息。这样可以有针对性地准确提取网页中的有用信息,从而减少干扰信息的影响。
图11示出了根据另一实施例的网页信息提取装置的示意性框图。在图11所示的装置包括网页获取模块1101、网页树结构建立模块1102、模板获取模块1103、路径选择模块1104和路径匹配模块1105。这些模块1101-1105与图10中的模块1001-1005功能相似,这里不再重复。除此之外,该网页信息提取装置还包括模板生成模块1106,用于生成网站的DOM树结构模板。
如图14所示,模板生成模块1106可以包括树结构建立单元110601、节点选择单元110602和路径生成单元110603。
树结构建立单元110601被配置用于根据所述网站的一个或多个网页的源代码来建立各相关联的网页的文档对象模型树结构。
这里所谓的“一个或多个网页”可以是网站中具有某种类似结构的网页,例如论坛网页、包括产品目录的网页以及其他结构化的网页等。为了所建立模板的准确性,通常要使用多个网页的源代码。可以对所获取的网页进行过滤,以滤除无用图片等干扰信息,从而只保留网页主体中的文本信息。网页的DOM树结构可以利用DOM技术来建立,这里不再详细描述。
节点选择单元110602可以被配置用于选择各相关联的网页的文档对象模型树结构中的一个或多个节点。
在一个示例中,节点选择单元110602可以按照一定的算法自动地在DOM树中选择节点。在另一示例中,节点选择单元110602还可以利用用户输入的信息(例如用户利用图16所示的界面来输入的信息)来选择节点。选择节点的原则可以包括:路径尽可能短,能够包括完整的节点内容,并且不包括太多的干扰信息。
路径生成单元110603可以被配置用于从相应的文档对象模型树结构中提取所选择的节点的路径信息,并保存各节点的路径信息,从而生成所述模板。在一个示例中,节点的路径信息可以是字符串形式的。
在一个示例中,模板生成模块1106还可以针对论坛而建立至少两种模板:与包含主贴和回贴的网页对应的模板以及与仅包含回贴的网页对应的模板。这样,在抽取论坛网页中的信息时,可以根据网页的内容来选择不同的模板。
在一个示例中,所建立的模板可以是XML(Extensible MarkupLanguage,可扩展标记语言)文件格式的。模板中的每个要抽取内容的路径信息可以一个字符串,该字符串由标识DOM树层次结构的结构数组组成,所述结构数组可以包括节点的名称(如标签)和顺序号等属性信息。。在一个示例中,各节点的顺序号可以从零开始,依次指向顺序号的值加一后所对应的节点。
图12示出了根据另一实施例的网页信息提取装置的示意性框图。在图12所示的装置包括网页获取模块1201、网页树结构建立模块1202、模板获取模块1203、路径选择模块1204和路径匹配模块1205。这些模块1201-1205与图10中的模块1001-1005功能相似,这里不再重复。除此之外,该网页信息提取装置还包括节点数据结构建立模块1207。
节点数据结构建立模块1207可以被配置用于从网页树结构建立模块1202所建立的网页的文档对象模型树结构中获取每个节点及其相关信息,并按照一定的数据结构进行存储,供路径匹配模块1205使用。所述数据结构包括:节点的属性信息、父节点的属性信息、第一个子节点的属性信息、下一兄弟节点的属性信息等。
利用节点数据结构建立模块1207所建立的数据结构,路径匹配模块1205在进行路径信息匹配时,可以方便地得到所述网页的DOM树结构中的各个节点的父亲节点、兄弟节点和子节点,有利于后需的路径匹配和/或遍历等。
图13示出了根据另一实施例的网页信息提取装置的示意性框图。在图13所示的装置包括网页获取模块1301、网页树结构建立模块1302、模板获取模块1303、路径选择模块1304和路径匹配模块1305。模块1301-1304与图10中的模块1001-1004功能相似。路径匹配模块1305可以利用绝对匹配的方法进行路径匹配。具体地,所述路径匹配模块可以包括绝对匹配单元130501。
绝对匹配单元130501被配置用于遍历所述网页的文档对象模型树结构,将所述路径信息与所述网页的文档对象模型树结构中的各节点进行匹配,返回所述路径信息中最后的匹配节点在所述网页的文档对象模型树结构的位置。
绝对匹配单元130501可以采用上述方法实施例和/或方法示例中的绝对匹配方法进行路径信息的匹配,这里不再重复。另外,应理解,本文所所述的各种示例和实施例均是示例性的,本发明不限于此。
在一个示例中,路径匹配模块1305还可以包括相似匹配单元130502。相似匹配单元130502被配置用于在绝对匹配不成功时将绝对匹配单元130501返回的所述路径信息中所述最后的匹配节点的下一节点改变为该下一节点的某个兄弟节点,并反馈给所述绝对匹配单元进行绝对匹配。
相似匹配单元130502可以采用上述方法实施例和/或方法示例中的相似匹配方法进行路径信息的匹配,这里不再重复。另外,应理解,本文所所述的各种示例和实施例均是示例性的,本发明不限于此。
上述装置中各个组成模块、单元可通过软件、固件、硬件或其组合的方式进行配置。配置可使用的具体手段或方式为本领域技术人员所熟知,在此不再赘述。在通过软件或固件实现的情况下,从存储介质或网络向具有专用硬件结构的计算机(例如图15所示的通用计算机1500)安装构成该软件的程序,该计算机在安装有各种程序时,能够执行各种功能等。
在图15中,中央处理单元(CPU)1501根据只读存储器(ROM)1502中存储的程序或从存储部分1508加载到随机存取存储器(RAM)1503的程序执行各种处理。在RAM 1503中,也根据需要存储当CPU 1501执行各种处理等等时所需的数据。CPU 1501、ROM 1502和RAM 1503经由总线1504彼此连接。输入/输出接口1505也连接到总线1504。
下述部件连接到输入/输出接口1505:输入部分1506(包括键盘、鼠标等等)、输出部分1507(包括显示器,比如阴极射线管(CRT)、液晶显示器(LCD)等,和扬声器等)、存储部分1508(包括硬盘等)、通信部分1509(包括网络接口卡比如LAN卡、调制解调器等)。通信部分1509经由网络比如因特网执行通信处理。根据需要,驱动器1510也可连接到输入/输出接口1505。可拆卸介质1511比如磁盘、光盘、磁光盘、半导体存储器等等根据需要被安装在驱动器1510上,使得从中读出的计算机程序根据需要被安装到存储部分1508中。
在通过软件实现上述系列处理的情况下,从网络比如因特网或存储介质比如可拆卸介质1511安装构成软件的程序。
本领域的技术人员应当理解,这种存储介质不局限于图15所示的其中存储有程序、与设备相分离地分发以向用户提供程序的可拆卸介质1511。可拆卸介质1511的例子包含磁盘(包含软盘(注册商标))、光盘(包含光盘只读存储器(CD-ROM)和数字通用盘(DVD))、磁光盘(包含迷你盘(MD)(注册商标))和半导体存储器。或者,存储介质可以是ROM 1502、存储部分1508中包含的硬盘等等,其中存有程序,并且与包含它们的设备一起被分发给用户。
本发明还提出一种存储有机器可读取的指令代码的程序产品。所述指令代码由机器读取并执行时,可执行上述根据本发明实施例的方法。
相应地,用于承载上述存储有机器可读取的指令代码的程序产品的存储介质也包括在本发明的公开中。所述存储介质包括但不限于软盘、光盘、磁光盘、存储卡、存储棒等等。
在上面对本发明具体实施例的描述中,针对一种实施方式描述和/或示出的特征可以以相同或类似的方式在一个或更多个其它实施方式中使用,与其它实施方式中的特征相组合,或替代其它实施方式中的特征。
应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
此外,本发明的方法不限于按照说明书中描述的时间顺序来执行,也可以按照其他的时间顺序地、并行地或独立地执行。因此,本说明书中描述的方法的执行顺序不对本发明的技术范围构成限制。
尽管上面已经通过对本发明的具体实施例的描述对本发明进行了披露,但是,应该理解,上述的所有实施例和示例均是示例性的,而非限制性的。本领域的技术人员可在所附权利要求的精神和范围内设计对本发明的各种修改、改进或者等同物。这些修改、改进或者等同物也应当被认为包括在本发明的保护范围内。

Claims (8)

1.一种网页信息提取方法,包括: 
网页获取步骤:获取网站中的网页的源代码; 
网页树结构建立步骤:根据所获取的源代码来建立所述网页的文档对象模型树结构,所述网页的文档对象模型树结构包括一个或多个节点; 
模板获取步骤:获取所述网站的至少一个模板,所述模板是文档对象模型树结构的; 
路径选择步骤:从所述模板中选择要抽取内容的路径信息;及 
路径匹配步骤:将所述要抽取内容的路径信息与所述网页的文档对象模型树结构中的各节点进行匹配,如果匹配成功,则提取所述网页中的与所述路径信息对应的内容信息, 
其中,该网页信息提取方法还包括模板生成步骤,其中,所述模板生成步骤包括: 
获取所述网站的一个或多个网页的源代码; 
建立各网页的文档对象模型树结构; 
选择各网页的文档对象模型树结构中的一个或多个节点; 
从相应的文档对象模型树结构中提取所选择的节点的路径信息;及 
保存各节点的路径信息,从而形成所述模板,并且 
其中,所述要抽取内容的路径信息包括从所述模板的根节点到达所述要抽取内容所对应的节点要经过的路径中的各节点的属性信息, 
所述网页信息提取方法还包括节点数据结构建立步骤:从所述网页树结构建立步骤中所建立的所述网页的文档对象模型树结构中获取每个节点的相关信息,并按照下列数据结构进行存储供所述路径匹配步骤使用:节点的属性信息、父节点的属性信息、第一个子节点的属性信息、下一兄弟节点的属性信息; 
其中,所述路径匹配步骤包括: 
绝对匹配步骤:遍历所述网页的文档对象模型树结构,以将所述路径信息与所述网页的文档对象模型树结构中的各节点进行匹配,找到所述路径信息中与所述网页的文档对象模型树结构中的某个节点相匹配的最后的匹配节点;以及 
相似匹配步骤:将所述路径信息中所述最后的匹配节点的下一节点改变为该下一节点的某个兄弟节点,重复执行所述绝对匹配步骤。 
2.如权利要求1所述的网页信息提取方法,其中所述从所述模板的根节点到达所述要抽取内容所对应的节点要经过的路径中的各节点的属性信息包括所述各节点的名称和顺序号,所述顺序号指示节点在所述模板中的位置。 
3.如权利要求1所述的网页信息提取方法,其中所述网页的文档对象模型树结构中的节点的属性信息包括该节点的名称和顺序号,所述顺序号指示该节点在所述网页的文档对象模型树结构中的位置。 
4.如权利要求1所述的网页信息提取方法,其中: 
所述网页为论坛网页,所述模板包括以下内容的路径信息:发帖区、发帖人、发帖日期、发帖内容和发帖标题、第一个回帖的回帖区、回帖人、回帖日期、回帖内容和回帖标题。 
5.如权利要求4所述的网页信息提取方法,其中所述路径信息包括公共路径信息,所述公共路径信息包括所述论坛的发帖区的路径和所述论坛的回贴区的路径。 
6.如权利要求4所述的网页信息提取方法,其中所述至少一个模板包括:与包含主贴和回贴的网页对应的模板以及与仅包含回贴的网页对应的模板。 
7.如权利要求1所述的网页信息提取方法,其中所述模板是可扩展标记语言格式的文件。 
8.一种网页信息提取装置,包括: 
网页获取模块:被配置用于获取网站中的网页的源代码; 
网页树结构建立模块,被配置用于根据所述网页获取模块所获取的源代码来建立所述网页的文档对象模型树结构,所述网页的文档对象模型树结构包括一个或多个节点; 
模板获取模块,被配置用于获取所述网站的至少一个模板,所述模板是文档对象模型树结构的; 
路径选择模块,被配置用于从所述模板中选择要抽取内容的路径信息;及 
路径匹配模块,被配置用于将所述路径选择模块所选择的要抽取内容的路径信息与所述网页的文档对象模型树结构中的各节点进行匹配,如果匹配成功,则提取所述网页中的与所述路径信息对应的内容信息, 
其中,所述网页信息提取装置还包括模板生成模块,所述模板生成模块包括: 
源代码获取单元,被配置成获取所述网站的一个或多个网页的源代码; 
树结构建立单元,被配置用于建立各网页的文档对象模型树结构; 
节点选择单元,被配置用于选择各网页的文档对象模型树结构中的一个或多个节点; 
路径生成单元,被配置用于从相应的文档对象模型树结构中提取所选择的节点的路径信息,并保存各节点的路径信息,从而形成所述模板,并且 
其中,所述路径选择模块所选择的要抽取内容的路径信息包括从所述模板的根节点到达所述要抽取内容所对应的节点要经过的路径中的各节点的属性信息,所述网页信息提取装置还包括节点数据结构建立模块,被配置用于从所述网页树结构建立模块建立的所述网页的文档对象模型树结构中获取每个节点的相关信息,并按照下列数据结构进行存储,供所述 路径匹配模块使用:节点的属性信息、父节点的属性信息、第一个子节点的属性信息、下一兄弟节点的属性信息; 
其中,所述路径匹配模块包括: 
绝对匹配单元,被配置用于遍历所述网页的文档对象模型树结构,以将所述路径信息与所述网页的文档对象模型树结构中的各节点进行匹配,找到所述路径信息中与所述网页的文档对象模型树结构中的某个节点相匹配的最后的匹配节点,以及 
相似匹配单元,被配置用于将所述路径信息中所述最后的匹配节点的下一节点改变为该下一节点的某个兄弟节点,并输出给所述绝对匹配单元重复进行绝对匹配。 
CN200910158803.9A 2009-07-06 2009-07-06 网页信息提取方法和装置 Expired - Fee Related CN101944094B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200910158803.9A CN101944094B (zh) 2009-07-06 2009-07-06 网页信息提取方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910158803.9A CN101944094B (zh) 2009-07-06 2009-07-06 网页信息提取方法和装置

Publications (2)

Publication Number Publication Date
CN101944094A CN101944094A (zh) 2011-01-12
CN101944094B true CN101944094B (zh) 2014-06-18

Family

ID=43436088

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910158803.9A Expired - Fee Related CN101944094B (zh) 2009-07-06 2009-07-06 网页信息提取方法和装置

Country Status (1)

Country Link
CN (1) CN101944094B (zh)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102646095B (zh) * 2011-02-18 2014-08-06 株式会社理光 一种基于网页分类信息的对象分类方法和系统
CN102651002B (zh) * 2011-02-28 2017-08-11 深圳市世纪光速信息技术有限公司 一种网页信息抽取方法及其系统
CN102681994B (zh) * 2011-03-07 2014-03-12 北京百度网讯科技有限公司 一种网页信息抽取方法及系统
CN102722489B (zh) * 2011-03-30 2015-12-02 株式会社理光 从网页中抽取对象标识符的系统及方法
CN102831121B (zh) 2011-06-15 2015-07-08 阿里巴巴集团控股有限公司 一种网页信息抽取的方法和系统
CN102236713A (zh) * 2011-07-05 2011-11-09 广东星海数字家庭产业技术研究院有限公司 一种数字电视交互服务页面的信息提取方法及其装置
CN102890681B (zh) * 2011-07-20 2016-03-09 阿里巴巴集团控股有限公司 一种生成网页结构模板的方法及系统
CN102314497B (zh) * 2011-08-26 2014-12-10 百度在线网络技术(北京)有限公司 一种用于识别标记语言文件主体内容的方法和设备
US9251287B2 (en) * 2011-08-26 2016-02-02 International Business Machines Corporation Automatic detection of item lists within a web page
CN102298637B (zh) * 2011-08-31 2015-04-15 北京中搜网络技术股份有限公司 用于内容发布的方法和系统
CN102521359B (zh) * 2011-12-15 2013-09-11 中国工商银行股份有限公司 界面数据文件的比较方法及装置
CN102752398B (zh) * 2012-07-18 2015-09-09 腾讯科技(深圳)有限公司 解析流量值的方法、终端、服务器及系统
CN103593344B (zh) * 2012-08-13 2016-09-21 北大方正集团有限公司 一种信息采集方法和装置
CN103020179A (zh) * 2012-11-28 2013-04-03 北京小米科技有限责任公司 一种网页内容的提取方法、装置和设备
CN103020266B (zh) * 2012-12-25 2016-06-29 北京奇虎科技有限公司 对网页文本内容进行提取的方法和装置
CN103064943B (zh) * 2012-12-25 2016-11-23 北京奇虎科技有限公司 一种客户端设备
CN103150389B (zh) * 2013-03-21 2017-05-10 北京奇虎科技有限公司 对网页文本内容匹配设置进行处理的方法和装置
CN103226599B (zh) * 2013-04-23 2018-09-28 翁杰 一种精确提取网页内容的方法及系统
CN103279495B (zh) * 2013-05-06 2016-05-25 百度在线网络技术(北京)有限公司 用于确定目标对象所对应的站点信息模板的方法和设备
CN104182429B (zh) * 2013-05-28 2017-08-25 腾讯科技(深圳)有限公司 网页处理方法和终端
CN103345532A (zh) * 2013-07-26 2013-10-09 人民搜索网络股份公司 一种网页信息抽取方法及装置
CN104866509A (zh) * 2014-02-26 2015-08-26 阿里巴巴集团控股有限公司 页面元素的定位方法及装置
CN104217036B (zh) * 2014-10-08 2019-01-15 广州华多网络科技有限公司 一种网页内容提取方法和设备
CN104331438B (zh) * 2014-10-24 2018-04-17 北京奇虎科技有限公司 对小说网页内容选择性抽取方法和装置
CN104965901A (zh) * 2015-06-30 2015-10-07 北京奇虎科技有限公司 一种目标页面内容抓取方法和装置
CN106528068A (zh) * 2015-09-15 2017-03-22 中国电信股份有限公司 一种网页内容重构方法和系统
CN105427490B (zh) * 2015-10-26 2017-08-25 国网天津市电力公司 一种网页信息提取声光告警方法
CN105468688B (zh) * 2015-11-17 2020-04-28 百度在线网络技术(北京)有限公司 一种站点模板的处理方法及装置
CN106802899B (zh) * 2015-11-26 2020-11-24 北京搜狗科技发展有限公司 网页正文抽取方法及装置
CN107220250A (zh) * 2016-03-21 2017-09-29 北大方正集团有限公司 一种模板配置方法及系统
CN106599280B (zh) * 2016-12-23 2019-11-22 北京奇虎科技有限公司 确定网页节点路径信息的方法及装置
CN108268436B (zh) * 2016-12-30 2021-08-20 珠海金山办公软件有限公司 一种幻灯片美化匹配的方法及装置
CN106873973B (zh) * 2016-12-30 2020-05-08 南京大学 一种基于api文档的约束自动生成方法
CN108733405A (zh) * 2017-04-13 2018-11-02 富士通株式会社 训练网页分布式表示模型的方法和装置
CN107423391B (zh) * 2017-07-24 2020-11-03 福州大学 网页结构化数据的信息提取方法
CN107729481B (zh) * 2017-10-16 2020-10-13 鼎富智能科技有限公司 一种自定义规则的文本信息抽取结果筛选方法及装置
CN110020302A (zh) * 2017-11-16 2019-07-16 富士通株式会社 提取网页内容的方法和网页内容提取装置
CN108255975B (zh) * 2017-12-27 2021-05-07 东软集团股份有限公司 模板构建方法、页面内容抓取方法及装置、介质及设备
CN108509544B (zh) * 2018-03-20 2021-05-18 腾讯科技(深圳)有限公司 思维导图的获取方法及装置、设备及可读存储介质
CN110363457A (zh) * 2018-04-11 2019-10-22 苏宁易购集团股份有限公司 基于快递单号匹配快递公司名称的方法及系统
CN108874977B (zh) * 2018-06-08 2020-11-27 东软集团股份有限公司 页面数据提取方法、装置、存储介质及电子设备
US11507638B2 (en) * 2018-06-21 2022-11-22 Tsunagu.Ai, Inc. Web content automated generation system
CN109144513B (zh) * 2018-08-22 2022-02-11 上海嘉道信息技术有限公司 一种自动抽取列表页的方法
CN109165332A (zh) * 2018-09-13 2019-01-08 郑州云海信息技术有限公司 一种网页信息获取方法、装置以及设备
CN109783139B (zh) * 2019-02-21 2020-12-04 四川大学 软件界面特征提取方法、装置及电子设备
CN110110293A (zh) * 2019-03-21 2019-08-09 平安普惠企业管理有限公司 H5工程文件的说明文档生成方法、装置和计算机设备
CN111966932A (zh) * 2019-05-20 2020-11-20 富士通株式会社 信息处理方法和信息处理设备
CN110489625A (zh) * 2019-07-29 2019-11-22 北京百分点信息科技有限公司 一种网页数据采集模板的生成方法和装置
CN110489628A (zh) * 2019-08-22 2019-11-22 北大方正集团有限公司 数据处理方法、装置及电子设备
CN113723980A (zh) * 2020-05-26 2021-11-30 北京达佳互联信息技术有限公司 广告落地页的检测方法、装置、电子设备及存储介质
CN112487319A (zh) * 2020-11-26 2021-03-12 清创网御(合肥)科技有限公司 一种基于dom树路径匹配的文章解析方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101192234A (zh) * 2007-06-07 2008-06-04 腾讯科技(深圳)有限公司 一种基于网页抽取的搜索系统及搜索方法
CN101350019A (zh) * 2008-06-20 2009-01-21 浙江大学 基于预定义槽间向量模型的网页信息抽取方法
CN101464905A (zh) * 2009-01-08 2009-06-24 中国科学院计算技术研究所 一种网页信息抽取的系统及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101192234A (zh) * 2007-06-07 2008-06-04 腾讯科技(深圳)有限公司 一种基于网页抽取的搜索系统及搜索方法
CN101350019A (zh) * 2008-06-20 2009-01-21 浙江大学 基于预定义槽间向量模型的网页信息抽取方法
CN101464905A (zh) * 2009-01-08 2009-06-24 中国科学院计算技术研究所 一种网页信息抽取的系统及方法

Also Published As

Publication number Publication date
CN101944094A (zh) 2011-01-12

Similar Documents

Publication Publication Date Title
CN101944094B (zh) 网页信息提取方法和装置
CN103294781A (zh) 一种用于处理页面数据的方法与设备
US20160041951A1 (en) Corpus generation device, corpus generation method and corpus generation program
CN102375847B (zh) 形成用于生成文档模板的合并树的方法以及装置
CN107608948A (zh) 一种文本信息抽取模型的构建方法及装置
JP2008191833A (ja) 論理構造認識処理プログラム、論理構造認識処理方法および論理構造認識処理装置
US20110145249A1 (en) Content grouping systems and methods
CN110781668A (zh) 文本信息的类型识别方法及装置
CN102163203A (zh) 网页下载的方法和装置
CN107220250A (zh) 一种模板配置方法及系统
CN111553138B (zh) 用于规范内容结构文档的辅助写作方法及装置
CN108021682A (zh) 开放式信息抽取背景下一种基于维基百科的实体语义化方法
CN103064966A (zh) 一种从单记录网页中抽取规律噪音的方法
CN113268607A (zh) 知识图谱的构建方法和装置
JP2004178010A (ja) 文書処理装置並びにその方法及びプログラム
Pandi et al. A novel similarity measure for sequence data
CN110750632A (zh) 一种改进的中文alice智能问答方法及系统
Dejean Extracting structured data from unstructured document with incomplete resources
CN101840402A (zh) 从多语言网站构建多语言的对象层次结构的方法和系统
KR101697061B1 (ko) 클라우드기반 창작 저작물 등록시스템
CN113268608A (zh) 知识概念构建方法和装置
CN110866084A (zh) 家谱人物的数据处理方法及装置、电子设备
Green et al. Writing and publishing Green's Dictionary of Slang
Kasinathan et al. OTOWIK: WIKIS TO MAPS
Tannai et al. A versatile argumentation system based on the logic of multiple-valued argumentation

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140618

Termination date: 20180706