CN102236658A - 网页内容提取方法和装置 - Google Patents
网页内容提取方法和装置 Download PDFInfo
- Publication number
- CN102236658A CN102236658A CN2010101577662A CN201010157766A CN102236658A CN 102236658 A CN102236658 A CN 102236658A CN 2010101577662 A CN2010101577662 A CN 2010101577662A CN 201010157766 A CN201010157766 A CN 201010157766A CN 102236658 A CN102236658 A CN 102236658A
- Authority
- CN
- China
- Prior art keywords
- layout
- piece
- webpage
- web page
- layout piece
- 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
Images
Abstract
本发明公开了一种网页内容提取方法和装置。该网页内容提取装置包括:网页分割部分,被配置成对网页进行分割,得到至少一个布局块;布局块集合生成部分,被配置成在所述布局块中,找出具有相同宽度的布局块,得到至少一个布局块集合,各集合的布局块具有不同的宽度;布局块确定部分,被配置成确定具有最多布局块的布局块集合;内容提取部分,被配置成基于所述具有最多布局块的布局块集合来提取网页内容。
Description
技术领域
本发明总体上涉及计算机领域。具体而言,本发明涉及一种网页内容提取方法和装置。更具体来说,涉及一种利用了网页布局信息的网页内容提取方法和装置。
背景技术
随着互联网的快速发展,互联网上的信息每天都以惊人的速度增长。其中以HTML格式的Web网页是主要的信息载体,互联网也因此成为了现有信息系统的主要信息来源之一。但是,由于互联网的开放性和用户的随意性,Web网页在存在大量有价值的信息的同时也存在大量诸如导航、版权、广告等与正文无关的噪声信息。噪声信息的存在使得后续信息服务的数据质量无法保证。因此,需要从网页中提取有价值的内容以便用于后续的网页信息处理应用。
目前,已知存在很多种网页内容提取技术。例如,基于用户设计的特定语言来提取网页内容的技术、基于自然语言来抽取网页内容的技术、基于本体技术(Ontology)的网页内容提取技术等等。
发明内容
在下文中给出了关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,这个概述并不是关于本发明的穷举性概述。它并不是意图确定本发明的关键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
本发明旨在提供一种利用网页布局信息的网页内容提取方法和装置,其可以实现高效的网页内容提取,减少提取内容的缺失和噪声,尽可能地保证提取内容的完整性和正确性。
为了实现上述目的,根据本发明的一个方面,提供了一种网页内容提取方法,包括:对网页进行分割,得到至少一个布局块;在所述布局块中,找出具有相同宽度的布局块,得到至少一个布局块集合,各集合的布局块具有不同的宽度;确定具有最多布局块的布局块集合;基于所述具有最多布局块的布局块集合来提取网页内容。
为了实现上述目的,根据本发明的另一个方面,提供了一种网页内容提取装置,包括:网页分割部分,被配置成对网页进行分割,得到至少一个布局块;布局块集合生成部分,被配置成在所述布局块中,找出具有相同宽度的布局块,得到至少一个布局块集合,各集合的布局块具有不同的宽度;布局块确定部分,被配置成确定具有最多布局块的布局块集合;内容提取部分,被配置成基于所述具有最多布局块的布局块集合来提取网页内容。
为了实现上述目的,根据本发明的又一个方面,提供了一种计算机程序产品,包括机器可执行的指令,当在信息处理设备上执行所述指令时,所述指令使得所述信息处理设备执行根据本发明的网页内容提取方法。
为了实现上述目的,根据本发明的再一个方面,提供了一种计算机可读存储介质,包括机器可读的程序代码,当在信息处理设备上执行所述程序代码时,所述程序代码使得所述信息处理设备执行根据本发明的网页内容提取方法。
通过以下结合附图对本发明的最佳实施例的详细说明,本发明的这些以及其他优点将更加明显。
附图说明
本发明可以通过参考下文中结合附图所给出的描述而得到更好的理解,其中在所有附图中使用了相同或相似的附图标记来表示相同或者相似的部件。所述附图连同下面的详细说明一起包含在本说明书中并且形成本说明书的一部分,而且用来进一步举例说明本发明的优选实施例和解释本发明的原理和优点。在附图中:
图1示出了根据本发明一个实施例的网页内容提取方法的流程图。
图2示出了根据本发明一个实施例的网页分割处理。
图3示出了根据本发明另一个实施例的网页内容提取方法的流程图。
图4示出了根据本发明一个实施例的过滤处理。
图5示出了根据本发明一个实施例的网页内容提取装置的框图。
图6示出了根据本发明一个实施例的网页分割部分的框图。
图7示出了根据本发明另一个实施例的网页内容提取装置的框图。
图8示出了根据本发明一个实施例的过滤部分的框图。
图9是示出了其中可以实现根据本发明实施例的方法和/或装置的通用个人计算机的示例性结构的框图。
具体实施方式
在下文中将结合附图对本发明的示范性实施例进行描述。为了清楚和简明起见,在说明书中并未描述实际实施方式的所有特征。然而,应该了解,在开发任何这种实际实施例的过程中必须做出很多特定于实施方式的决定,以便实现开发人员的具体目标,例如,符合与系统及业务相关的那些限制条件,并且这些限制条件可能会随着实施方式的不同而有所改变。此外,还应该了解,虽然开发工作有可能是非常复杂和费时的,但对得益于本公开内容的本领域技术人员来说,这种开发工作仅仅是例行的任务。
在此,还需要说明的一点是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的装置结构和/或处理步骤,而省略了与本发明关系不大的其他细节。
本发明旨在提供一种利用网页布局信息的网页内容提取方法和装置,其可以实现高效的网页内容提取,减少提取内容的缺失和噪声,尽可能地保证提取内容的完整性和正确性。
第一实施方式
图1示出了根据本发明一个实施例的网页内容提取方法的流程图。
如图1所示,该方法在步骤S102处执行网页分割处理,得到至少一个布局块。
对网页的分割可以采用任何技术,目的是尽量按照网页的布局结构将网页分成不同的布局块。这其中常用的技术包括但不限于DOM(Document Object Model,文档对象模型)树技术、图像识别技术和模式识别技术等。
参见图1,接着,在步骤S104处,可以将在步骤S102获得的至少一个布局块划分成至少一个布局块集合,由此生成至少一个布局块集合。
在一个示例中,可以根据所得到的布局块宽度来进行划分。例如,将宽度相同的布局块置于相同的布局块集合中。由此,得到了至少一个布局块集合。其中,在每个布局块集合中的布局块的宽度相同,而各个不同的布局块集合又具有不同的宽度。
参见图1,在步骤S106处,可以从在步骤S104中获得的至少一个布局块集合中,找出布局块数目最多的一个布局块集合。
具体来说,经过网页分割处理后,与网页主体内容对应的布局块一般都具有相同的宽度,并且与网页主体内容对应的布局块的数目一般也最多。因此,在步骤S106找出的宽度相同的布局块数目最多的一个布局块集合最有可能是包含网页的主体内容的布局块集合。
参见图1,在步骤S108处,可以基于在步骤S106找出的布局块数目最多的布局块集合来提取网页内容。
在一个示例中,可以直接提取该布局块数目最多的布局块集合中的所有布局块的内容作为网页内容。
在另一个示例中,可以基于布局块在网页中的位置来进行提取。
可以通过任何合适的方式来获取布局块在网页中的位置。例如,可以利用VIPS算法、图像识别技术和模式识别技术等。
其中VIPS(Vision-based Page Segmentation,基于视觉的页面分割)算法是一种基于人在浏览网页时对页面布局的感知而将网页分割成至少一个布局块的算法。VIPS算法可以针对每个布局块给出该布局块在网页中的位置的坐标信息。
例如在Deng Cai、Shipeng Yu、Jirong Wen、Weiying Ma等人的题为“Extacting Content Structure for Web Pages based on VisualRepresentation”的文献中,详细描述了VIPS算法的处理,该文献参见APWeb 2003:406-417,该文献的全部内容通过引用合并于此。
如上所述,布局块数目最多的布局块集合最有可能是包含网页的主体内容的布局块集合。进一步考虑到网页中的主体内容往往具有连续性,因此,可以在该包含网页的主体内容的布局块集合中找出网页主体内容在网页中的开始位置与结束位置,并提取该开始位置和结束位置以及之间的内容来作为网页的主体内容。
具体来说,可以通过VIPS算法得到的各个布局块的位置信息,根据该位置信息在所述具有最多布局块的布局块集合(即,最有可能是包含网页的主体内容的部分)中找出首块和尾块(即,找出网页主体内容在网页中的开始位置和结束位置);提取所述首块、所述尾块以及位置在所述首块和所述尾块之间的布局块的内容作为所述网页内容。
回到图1,这样就完成了根据本发明的一个实施例的网页内容提取方法。
在上述方法中,在网页分割中利用了网页的布局信息,使得可以提高后续的布局块处理的效率。此外,由于利用网页内容的开始位置和结束位置来进行提取,使得既可以减少漏提取的可能性(例如,在某些文本内容由于特殊颜色、字体等而未被划分到网页的主体内容的布局块集合中的情况下)又可以减少夹杂在提取出来的内容中的噪声信息(例如,在某些非文本的噪声内容被错误地划分到网页的主体内容的布局块集合中的情况下)。
因而,根据本发明实施例的网页内容提取方法可以实现高效的网页内容提取并减少提取内容的缺失和噪声,从而尽可能地保证提取内容的完整性和正确性。
第二实施方式
如上所述,在对网页进行布局分割时,可以采用任何合适的基于布局信息的网页分割方法。
在本发明的一个实施例中,采用了基于DOM(Document ObjectModel,文档对象模型)树的网页分割处理。
图2具体示出了根据本发明一个实施例的基于DOM树的网页分割处理。
如图2所示,在步骤S202处,可以将网页解析成DOM树。
在一个示例中,将网页解析成DOM树的处理包括:依次读入网页的内容,识别每一个HTML标签的名称、类别、参数和内容,以树状结构进行存储,从而形成网页的DOM树。
更具体地,例如,可以采用基于改进的Firefox(火狐,一种开源浏览器)网页解析算法的网页树结构分析算法来建立DOM树结构。或者,例如也可以采用基于微软公司的IE(网络浏览器)的网页解析算法的网页树结构分析算法来建立DOM树结构。
接着,如图2所示,在步骤S204处,可以基于DOM树上的节点的属性将所述网页分割成至少一个布局块。
具体来说,可以利用DOM树上的节点标签名称、显示属性、节点类型中的至少一个来对DOM树中的节点进行布局块分割,由此将网页分割成至少一个布局块。
例如,可以按照各个节点标签名称(如,form、label、title等)来将网页分割成表单、标题等不同布局块。
又例如,可以按照各个节点的显示属性(如,颜色、字体等)来将网页分割成按颜色和/或字体区分的不同布局块。
再例如,可以按照各个节点的类型(如,文本节点、图形节点、内联节点等)来将网页分割成文本、图形等不同布局块。
此外,也可以将上述因素中的一个或多个结合起来对网页进行分割。
例如,在一个优选的示例中,可以先按照节点标签名称进行网页分割;然后再按照各个节点的颜色和字体来进行分割。
或者,在另一个优选的示例中,可以先按照节点标签名称进行网页分割;然后再按照各个节点的颜色和字体来进行分割;之后再按照节点的类型进行进一步的分割。
在一个更具体的示例中,可以利用VIPS算法来将网页分割成至少一个布局块。如上所述,VIPS算法是一种可以在一定程度上模拟人在浏览网页时对页面布局的感知的网页分割算法。
在VIPS算法中,根据一个或多个DOM树节点的属性,如节点标签名称、显示属性(字体、字形、颜色、背景等)以及节点类型(文本节点、图形节点、内联节点等)等来对DOM树中的节点进行布局分割,由此将网页分割成至少一个布局块。此外,VIPS算法也可以针对每个布局块给出该布局块在网页中的位置的坐标信息。
在VIPS算法中,由于综合考虑了节点在页面中的空间分布及视觉属性,因而可以在一定程度上实现视觉层次上对网页的布局分割,从而使得获得的布局更符合用户浏览网页时的感知,也更加接近真实的网页布局。
第三实施方式
以上所描述的只是本发明的示例,本发明不限于此。例如,根据本发明的另一个实施例的网页内容提取方法可以进一步包括用于过滤网页中的噪声信息的过滤处理,以便进一步提高网页内容提取的精度和效率。例如,该过滤处理可以在网页分割处理之后执行,这样可以在网页分割成至少一个布局块之后,过滤掉可能是噪声的布局块,使得可以进一步提高后续处理的精度和效率。
图4示出了根据本发明一个实施例的过滤处理。
在图4所示的实施例中,过滤处理包括用于过滤边缘布局块的步骤S402和用于过滤非内容布局块的步骤S404。但是图4仅为示例,本发明不限于此,过滤处理也可以只包括这两个处理中的任意一个。也可以不按照图4所示的顺序而以相反的顺序执行。
如图4所示,在步骤S402,过滤布局块中的边缘布局块。其中,所述边缘布局块可以包括上下边缘布局块(例如,导航信息块、版权信息块等)和左右边缘布局块(例如,广告信息等)。
在网页中,上下边缘布局块(如导航信息块、版权信息块等)通常位于网页的上下两侧并往往具有与网页大小相同的宽度。此外,在网页中,左右边缘布局块(如广告信息等)通常位于网页的左右两侧并且距网页的距离较小。
因此,针对上下边缘布局块(例如,导航信息块、版权信息块等),可以利用布局块的宽度、网页的宽度、布局块距离网页上下边际的距离来进行过滤。或者,进一步考虑到网页通常都是上下分栏的,所以也可以利用网页分栏信息、布局块宽度、网页宽度来进行过滤,在利用网页分栏信息情况下,可以不使用布局块距离网页上下边际的距离。
在一个示例中,可以利用布局块的宽度、网页的宽度、布局块距离网页上下边际的距离来进行过滤上下边缘布局块(如导航信息块、版权信息块等)。例如,可以将布局块中宽度与网页宽度相同并且距网页上下边际的距离小于某一阈值的布局块视作是上下边缘布局块而过滤掉。其中,该阈值的具体取值可以根据统计结果来设定,例如可以是10个像素。
更优选地,在另一个示例中,可以利用网页分栏信息、布局块宽度、网页宽度来进行过滤上下边缘布局块(如导航信息块、版权信息块等)。例如,基于网页的上下分栏信息,可以在网页的上半部分中找出宽度与网页宽度相同且位置最靠上的布局块,并将该布局块作为上边缘布局块而过滤掉;类似地,在网页的下半部分中,可以找出宽度与网页宽度相同且位置最靠下的布局块并将该布局块作为下边缘布局块而过滤掉。
另一方面,针对左右边缘布局块(如广告信息等),考虑到左右边缘布局块距离网页左右边际的距离通常都比较小并且左右边缘布局块的宽度与网页宽度相比也比较小,所以可以基于布局块距离网页左右边际的距离和布局块宽度占整个网页宽度的比例来过滤左右边缘布局块(如广告信息等)。
在一个示例中,可以通过阈值比较的方法来实施过滤。例如,用阈值α表示布局块距离网页边际的距离阈值,用阈值β表示布局块占整个网页宽度的比例阈值。如果某一布局块距离网页的左边界或者右边界的小于α并且其占整个网页宽度比例小于β,则将该布局块认为是边缘噪声块,并将其过滤掉。其中,α、β的具体取值可以根据统计结果来设定。在一个优选示例中,α被设置为10个像素而β被设置为1/3。通过合理地设置α、β,而可以确保只过滤掉位于边缘的布局块,而不会过滤掉主体信息的布局块。
参见图4,可以在步骤S404过滤非内容布局块。其中非内容布局块是指网页中与主体内容无关的布局块(如,特殊字符、地址链接、用于交互的表单等),可以基于布局块属性(如文本显示长度、超链接比例、交互表单等)来进行过滤。
在一个示例中,可以基于布局块中的文本显示长度来进行判断。
具体来说,如果布局块中的文本显示长度小于一定的阈值,可以认为该布局块是非内容块(例如,特殊字符)。在一个优选示例中,该阈值被设置为20个像素。其中,该阈值的具体取值可以根据统计结果来设定。
在另一个示例中,可以根据布局块中包括的超链接文本与该布局块中的所有文本的比例来进行判断。
具体来说,如果布局块中含有大量的超链接,则可以认为该布局块是非内容块。例如,如果布局块中的超链接文本与该布局块中的所有文本的比例超过某一阈值,则可以将该布局块认为是非内容块。在一个优选示例中,该阈值被设置为0.4。其中,该阈值的具体取值可以根据统计结果来设定。
在又一个示例中,可以根据布局块中是否包括交互内容来进行判断。
具体来说,如果布局块在网页中并非是用来示出网页的内容而是起其它作用(例如,与用户进行交互等),则该布局块属于非内容块。例如,如果布局块中包含有节点FORM(如供用户输入评论等),则可以将该布局块认为是非内容块。
此外,本领域技术人员显然也可以想到将上述的判断因素中的一个或多个结合起来进行过滤,以便实现更准确的过滤,这种结合是基于前述描述内容容易实现的。
此外,尽管此处以阈值法为例描述了过滤处理,但是本发明不限于此,显然,还可以以其它方式来实现该过滤处理。例如,还可以通过训练分类器的方法来实施过滤处理。
图3示出了根据本发明另一个实施例的包括了过滤处理的网页内容提取方法的流程图。
图3中的处理S302、S306、S308和S310分别对应于图1中的处理S102、S104、S106和S108。区别只是在于在网页分割处理S302(对应于S102)和布局块集合生成处理S306(对应于S104)之间增加了过滤噪声信息的处理S304。
如图3所示,在步骤S302,对网页进行分割,从而得到至少一个布局块。例如,可以基于以上结合步骤S102描述的处理来找出布局块数目最多的一个布局块集合。
在步骤S304,针对得到的至少一个布局块,进行过滤噪声信息的过滤处理。例如,可以基于以上结合图4描述的过滤处理来进行过滤。
在步骤S306,可以将经过过滤后的布局块划分成至少一个布局块集合,由此生成至少一个布局块集合。例如,可以基于以上结合步骤S104描述的生成布局块集合的处理来生成布局块集合。
在步骤S308,在获得的至少一个布局块集合中,找出布局块数目最多的一个布局块集合。例如,可以基于以上结合步骤S106描述的处理来找出布局块数目最多的一个布局块集合。
在步骤S310,可以基于该布局块数目最多的一个布局块集合来提取网页内容。例如,可以基于以上结合步骤S108描述的处理来提取网页内容。
具体来说,在一个示例中,可以直接提取该布局块数目最多的布局块集合中的所有布局块的内容作为网页内容。
在另一个示例中,也可以按照布局块在网页中的位置(例如,可以通过VIPS算法得到该位置),在所述具有最多布局块的布局块集合中找出首块和尾块;提取所述首块、所述尾块以及位置在所述首块和所述尾块之间的布局块的内容作为所述网页内容。
其中,在后一个示例中,即在利用布局块在网页中的位置来提取网页内容的情况下,不仅可以将在生成布局块集合的处理中被遗漏的内容布局块重新考虑在内,还可以进一步将在过滤处理中被错误过滤掉的内容布局块重新考虑在内,所以可以进一步提高网页内容提取的准确性,并进一步减少内容漏提取的可能性。
回到图3,由此实施了根据本发明的一个实施例的包括了过滤处理的网页内容提取方法。
第四实施方式
另一方面,本发明还提供了一种网页内容提取装置。
图5示出了根据本发明一个实施例的网页内容提取装置的框图。
如图5所示,根据本发明一个实施例的网页内容提取装置500包括:网页分割部分502,被配置成对网页进行分割,得到至少一个布局块;布局块集合生成部分504,被配置成在所述布局块中,找出具有相同宽度的布局块,得到至少一个布局块集合,各集合的布局块具有不同的宽度;布局块确定部分506,被配置成确定具有最多布局块的布局块集合;内容提取部分508,被配置成基于所述具有最多布局块的布局块集合来提取网页内容。
例如,网页分割部分502、布局块集合生成部分504、布局块确定部分506、内容提取部分508可以被配置成按照上文描述的方式来分别执行图1中的步骤S102、S104、S106和S108。
具体来说,网页分割部分502可以采用任何技术以便尽量按照网页的布局结构将网页分成不同的布局块。这其中常用的技术包括但不限于DOM(Document Object Model,文档对象模型)树技术。
布局块集合生成部分504可以根据所得到的布局块宽度来进行划分。例如,将宽度相同的布局块置于相同的布局块集合中。由此,得到了至少一个布局块集合。其中,在每个布局块集合中的布局块的宽度相同,而各个不同的布局块集合又具有不同的宽度。
布局块确定部分506可以从布局块集合生成部分504生成的至少一个布局块集合中,找出布局块数目最多的一个布局块集合。这是因为,经过网页分割处理后,与网页主体内容对应的布局块一般都具有相同的宽度,并且与网页主体内容对应的布局块的数目一般也最多。因此,宽度相同的布局块数目最多的一个布局块集合最有可能是包含网页的主体内容的布局块集合。
内容提取部分508可以基于该布局块数目最多的布局块集合来提取网页内容。在一个示例中,内容提取部分508可以直接提取该布局块数目最多的布局块集合中的所有布局块的内容作为网页内容。在另一个示例中,内容提取部分508可以基于布局块在网页中的位置(例如,可以通过VIPS算法得到该位置)来提取网页内容。
此外,网页分割部分502、布局块集合生成部分504、布局块确定部分506、内容提取部分508的具体技术细节可以进一步参照以上结合图1进行的方法部分的说明。
第五实施方式
如上所述,在对网页进行布局分割时,网页分割部分502可以采用任何合适的基于布局信息的网页分割方法。
在本发明的一个实施例中,网页分割部分502采用了基于DOM树的网页分割处理。
图6示出了根据本发明一个实施例的网页分割部分502的框图。
如图6所示,网页分割部分502包括:解析部分602,被配置成将所述网页解析为DOM树;分割部分604,被配置成基于所述DOM树上的节点的属性,对所述网页进行分割。
例如,解析部分602和分割部分604可以被配置成按照上文描述的方式来分别执行图2中的步骤S202和S204。
其中,解析部分602可以依次读入网页的内容,识别每一个HTML标签的名称、类别、参数和内容,以树状结构进行存储,从而形成网页的DOM树。
分割部分604可以利用DOM树上的节点标签名称、显示属性、节点类型中的至少一个来对DOM树中的节点进行布局块分割,由此将网页分割成至少一个布局块。更具体地,例如,分割部分604可以利用VIPS算法来将网页分割成至少一个布局块。
此外,解析部分602和分割部分604的具体技术细节可以进一步参照以上结合图2进行的方法部分的说明。
第六实施方式
以上所描述的只是本发明的示例,本发明不限于此。例如,根据本发明的另一个实施例的网页内容提取装置可以进一步包括用于过滤网页中的噪声信息的过滤部分,以便进一步提高网页内容提取的精度和效率。例如,该过滤部分可以在网页分割部分之后,以便在网页被分割成至少一个布局块之后,过滤掉可能是噪声的布局块,从而可以提高后续处理的精度和效率。
图8示出了根据本发明一个实施例的过滤部分的框图。如图8所示,过滤部分704包括:被配置成过滤边缘布局块的边缘布局块过滤部分802和被配置成基于至少一个布局块属性来过滤掉非内容布局块的非内容布局块过滤部分804。但是图8仅为示例,本发明不限于此,过滤部分也可以只包括这两个部分中的任意一个,并且这两个部分的处理可以以不同的先后顺序执行。
例如,边缘布局块过滤部分802和非内容布局块过滤部分804可以被配置成按照上文描述的方式来分别执行图4中的步骤S402和S404。
更具体地,边缘布局块过滤部分802可以用来过滤布局块中的边缘布局块。其中,所述边缘布局块可以包括上下边缘布局块(例如,导航信息块、版权信息块等)和左右边缘布局块(例如,广告信息等)。
针对上下边缘布局块(例如,导航信息块、版权信息块等),边缘布局块过滤部分802可以利用布局块的宽度、网页的宽度、布局块距离网页上下边际的距离来进行过滤。或者,进一步考虑到网页通常都是上下分栏的,所以边缘布局块过滤部分802也可以利用网页分栏信息、布局块宽度、网页宽度来进行过滤,在利用网页分栏信息的情况下,可以不使用布局块距离网页上下边际的距离。
另一方面,针对左右边缘布局块(如广告信息等),考虑到左右边缘布局块距离网页左右边际的距离通常都比较小并且左右边缘布局块的宽度与网页宽度相比也比较小,所以边缘布局块过滤部分802可以基于布局块距离网页左右边际的距离和布局块宽度占整个网页宽度的比例来过滤左右边缘布局块(如广告信息等)。
此外,非内容布局块过滤部分804可以基于布局块属性(如文本显示长度、超链接比例、交互表单等)来过滤掉网页中与主体内容无关的非内容布局块(如特殊字符、地址链接、用于交互的表单等)。
此外,边缘布局块过滤部分802和非内容布局块过滤部分804的具体技术细节可以进一步参照以上结合图4进行的方法部分的说明。
第七实施方式
图7示出了根据本发明另一个实施例的包括了过滤部分704的网页内容提取装置700的框图。
如图7所示,网页内容提取装置700包括:网页分割部分702,被配置成对网页进行分割,得到至少一个布局块;过滤部分704,被配置成在所述网页分割部分702之后过滤网页中的噪声信息;布局块集合生成部分706,被配置成在所述布局块中,找出具有相同宽度的布局块,得到至少一个布局块集合,各集合的布局块具有不同的宽度;布局块确定部分708,被配置成确定具有最多布局块的布局块集合;内容提取部分710,被配置成基于所述具有最多布局块的布局块集合来提取网页内容。
可以看出,与图5的网页内容提取装置500相比,图7的网页内容提取装置700中的网页分割部分702、布局块集合生成部分706、布局块确定部分708、内容提取部分710分别对应于图5的网页分割部分502、布局块集合生成部分504、布局块确定部分506、内容提取部分508,区别只是在于图7中的网页内容提取装置700中进一步包括了过滤部分704。
其中,过滤部分704例如可以是以上结合图8所描述的过滤部分。
此外,过滤部分704的具体技术细节可以进一步参照以上结合图8进行的方法部分的说明。
上述装置中各个组成模块、单元可通过软件、固件、硬件或其组合的方式进行配置。配置可使用的具体手段或方式为本领域技术人员所熟知,在此不再赘述。在通过软件或固件实现的情况下,从存储介质或网络向具有专用硬件结构的计算机(例如图9所示的通用计算机900)安装构成该软件的程序,该计算机在安装有各种程序时,能够执行各种功能等。
在图9中,中央处理单元(CPU)901根据只读存储器(ROM)902中存储的程序或从存储部分908加载到随机存取存储器(RAM)903的程序执行各种处理。在RAM 903中,也根据需要存储当CPU 901执行各种处理等等时所需的数据。CPU 901、ROM 902和RAM 903经由总线904彼此连接。输入/输出接口905也连接到总线904。
下述部件连接到输入/输出接口905:输入部分906(包括键盘、鼠标等等)、输出部分907(包括显示器,比如阴极射线管(CRT)、液晶显示器(LCD)等,和扬声器等)、存储部分908(包括硬盘等)、通信部分909(包括网络接口卡比如LAN卡、调制解调器等)。通信部分909经由网络比如因特网执行通信处理。根据需要,驱动器910也可连接到输入/输出接口905。可拆卸介质911比如磁盘、光盘、磁光盘、半导体存储器等等根据需要被安装在驱动器910上,使得从中读出的计算机程序根据需要被安装到存储部分908中。
在通过软件实现上述系列处理的情况下,从网络比如因特网或存储介质比如可拆卸介质911安装构成软件的程序。
本领域的技术人员应当理解,这种存储介质不局限于图9所示的其中存储有程序、与设备相分离地分发以向用户提供程序的可拆卸介质911。可拆卸介质911的例子包含磁盘(包含软盘(注册商标))、光盘(包含光盘只读存储器(CD-ROM)和数字通用盘(DVD))、磁光盘(包含迷你盘(MD)(注册商标))和半导体存储器。或者,存储介质可以是ROM 902、存储部分908中包含的硬盘等等,其中存有程序,并且与包含它们的设备一起被分发给用户。
本发明还提出一种存储有机器可读取的指令代码的程序产品。所述指令代码由机器读取并执行时,可执行上述根据本发明实施例的方法。
相应地,用于承载上述存储有机器可读取的指令代码的程序产品的存储介质也包括在本发明的公开中。所述存储介质包括但不限于软盘、光盘、磁光盘、存储卡、存储棒等等。
最后,还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。此外,在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上虽然结合附图详细描述了本发明的实施例,但是应当明白,上面所描述的实施方式只是用于说明本发明,而并不构成对本发明的限制。对于本领域的技术人员来说,可以对上述实施方式作出各种修改和变更而没有背离本发明的实质和范围。因此,本发明的范围仅由所附的权利要求及其等效含义来限定。
根据上述描述,可以看出,本发明提供了以下的技术方案。
技术方案1.一种网页内容提取方法,包括:
对网页进行分割,得到至少一个布局块;
在所述布局块中,找出具有相同宽度的布局块,得到至少一个布局块集合,各集合的布局块具有不同的宽度;
确定具有最多布局块的布局块集合;
基于所述具有最多布局块的布局块集合来提取网页内容。
技术方案2.根据技术方案1所述的网页内容提取方法,其中,所述对网页进行分割的处理包括:
将所述网页解析为文档对象模型树;
基于所述文档对象模型树上的节点的属性,对所述网页进行分割。
技术方案3.根据技术方案2所述的网页内容提取方法,其中所述节点的属性包括以下内容中的至少一个:节点标签名称、显示属性、节点类型。
技术方案4.根据技术方案1所述的网页内容提取方法,还包括在所述对网页进行分割的处理之后用于过滤网页中的噪声信息的过滤处理。
技术方案5.根据技术方案4所述的网页内容提取方法,其中,所述过滤处理包括用于过滤边缘布局块的处理,所述用于过滤边缘布局块的处理包括:
基于布局块的宽度、网页页面的宽度以及网页的页面分栏信息中的至少一个,去除网页顶部和底部的上下边缘布局块;
基于布局块在网页中的左右边距和布局块宽度占整个网页宽度的比例,去除网页左右两侧的左右边缘布局块。
技术方案6.根据技术方案5所述的网页内容提取方法,其中,所述过滤处理还包括基于至少一个布局块属性来过滤掉非内容布局块的处理。
技术方案7.根据技术方案6所述的网页内容提取方法,其中,所述布局块属性包括以下内容中的至少一个:布局块的文本显示长度、布局块中的超链接文本与该布局块中的所有文本的比例以及布局块中是否包括交互内容。
技术方案8.根据技术方案4所述的网页内容提取方法,其中,所述基于所述具有最多布局块的布局块集合来提取网页内容的处理包括:根据布局块在网页中的位置,在所述具有最多布局块的布局块集合中找出首块和尾块;提取所述首块、所述尾块以及位置在所述首块和所述尾块之间的布局块的内容作为所述网页内容。
技术方案9.根据技术方案4所述的网页内容提取方法,其中,所述过滤处理包括基于至少一个布局块属性来过滤掉非内容布局块的处理。
技术方案10.根据技术方案9所述的网页内容提取方法,其中,所述基于所述具有最多布局块的布局块集合来提取网页内容的处理包括:根据布局块在网页中的位置,在所述具有最多布局块的布局块集合中找出首块和尾块;提取所述首块、所述尾块以及位置在所述首块和所述尾块之间的布局块的内容作为所述网页内容。
技术方案11.一种网页内容提取装置,包括:
网页分割部分,被配置成对网页进行分割,得到至少一个布局块;
布局块集合生成部分,被配置成在所述布局块中,找出具有相同宽度的布局块,得到至少一个布局块集合,各集合的布局块具有不同的宽度;
布局块确定部分,被配置成确定具有最多布局块的布局块集合;
内容提取部分,被配置成基于所述具有最多布局块的布局块集合来提取网页内容。
技术方案12.根据技术方案11所述的网页内容提取装置,其中,所述网页分割部分包括:
解析部分,被配置成将所述网页解析为文档对象模型树;
分割部分,被配置成基于所述文档对象模型树上的节点的属性,对所述网页进行分割。
技术方案13.根据技术方案12所述的网页内容提取装置,其中所述节点的属性包括以下内容中的至少一个:节点标签名称、显示属性、节点类型。
技术方案14.根据技术方案11所述的网页内容提取装置,还包括过滤部分,被配置成在所述网页分割部分之后过滤网页中的噪声信息。
技术方案15.根据技术方案14所述的网页内容提取装置,其中,所述过滤部分包括被配置成过滤边缘布局块的边缘布局块过滤部分,所述边缘布局块过滤部分包括:
上下边缘布局块过滤部分,被配置成基于布局块的宽度、网页页面的宽度以及网页的页面分栏信息中的至少一个,去除网页顶部和底部的上下边缘布局块;
左右边缘布局块过滤部分,被配置成基于布局块在网页中的左右边距和布局块宽度占整个网页宽度的比例,去除网页左右两侧的左右边缘布局块。
技术方案16.根据技术方案15所述的网页内容提取装置,其中,所述过滤部分还包括基于至少一个布局块属性来过滤掉非内容布局块的非内容布局块过滤部分。
技术方案17.根据技术方案16所述的网页内容提取装置,其中,所述布局块属性包括以下内容中的至少一个:布局块的文本显示长度、布局块中的超链接文本与该布局块中的所有文本的比例以及布局块中是否包括交互内容。
技术方案18.根据技术方案14所述的网页内容提取装置,其中,所述内容提取部分被配置成:根据布局块在网页中的位置,在所述具有最多布局块的布局块集合中找出首块和尾块;提取所述首块、所述尾块以及位置在所述首块和所述尾块之间的布局块的内容作为所述网页内容。
技术方案19.根据技术方案14所述的网页内容提取装置,其中,所述过滤部分被配置成包括基于至少一个布局块属性来过滤掉非内容布局块的非内容布局块过滤部分。
技术方案20.根据技术方案19所述的网页内容提取装置,其中,所述内容提取部分被配置成:根据布局块在网页中的位置,在所述具有最多布局块的布局块集合中找出首块和尾块;提取所述首块、所述尾块以及位置在所述首块和所述尾块之间的布局块的内容作为所述网页内容。
Claims (10)
1.一种网页内容提取装置,包括:
网页分割部分,被配置成对网页进行分割,得到至少一个布局块;
布局块集合生成部分,被配置成在所述布局块中,找出具有相同宽度的布局块,得到至少一个布局块集合,各集合的布局块具有不同的宽度;
布局块确定部分,被配置成确定具有最多布局块的布局块集合;
内容提取部分,被配置成基于所述具有最多布局块的布局块集合来提取网页内容。
2.根据权利要求1所述的网页内容提取装置,其中,所述网页分割部分包括:
解析部分,被配置成将所述网页解析为文档对象模型树;
分割部分,被配置成基于所述文档对象模型树上的节点的属性,对所述网页进行分割。
3.根据权利要求2所述的网页内容提取装置,其中所述节点的属性包括以下内容中的至少一个:节点标签名称、显示属性、节点类型。
4.根据权利要求1所述的网页内容提取装置,还包括过滤部分,被配置成在所述网页分割部分之后过滤网页中的噪声信息。
5.根据权利要求4所述的网页内容提取装置,其中,所述过滤部分包括被配置成过滤边缘布局块的边缘布局块过滤部分,所述边缘布局块过滤部分包括:
上下边缘布局块过滤部分,被配置成基于布局块的宽度、网页页面的宽度以及网页的页面分栏信息中的至少一个,去除网页顶部和底部的上下边缘布局块;
左右边缘布局块过滤部分,被配置成基于布局块在网页中的左右边距和布局块宽度占整个网页宽度的比例,去除网页左右两侧的左右边缘布局块。
6.根据权利要求5所述的网页内容提取装置,其中,所述过滤部分还包括基于至少一个布局块属性来过滤掉非内容布局块的非内容布局块过滤部分。
7.根据权利要求6所述的网页内容提取装置,其中,所述布局块属性包括以下内容中的至少一个:布局块的文本显示长度、布局块中的超链接文本与该布局块中的所有文本的比例以及布局块中是否包括交互内容。
8.根据权利要求4所述的网页内容提取装置,其中,所述过滤部分被配置成包括基于至少一个布局块属性来过滤掉非内容布局块的非内容布局块过滤部分。
9.一种网页内容提取方法,包括:
对网页进行分割,得到至少一个布局块;
在所述布局块中,找出具有相同宽度的布局块,得到至少一个布局块集合,各集合的布局块具有不同的宽度;
确定具有最多布局块的布局块集合;
基于所述具有最多布局块的布局块集合来提取网页内容。
10.根据权利要求9所述的网页内容提取方法,还包括在所述对网页进行分割的处理之后用于过滤网页中的噪声信息的过滤处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010157766.2A CN102236658B (zh) | 2010-04-26 | 2010-04-26 | 网页内容提取方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010157766.2A CN102236658B (zh) | 2010-04-26 | 2010-04-26 | 网页内容提取方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102236658A true CN102236658A (zh) | 2011-11-09 |
CN102236658B CN102236658B (zh) | 2015-01-14 |
Family
ID=44887316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010157766.2A Active CN102236658B (zh) | 2010-04-26 | 2010-04-26 | 网页内容提取方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102236658B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103353889A (zh) * | 2013-07-03 | 2013-10-16 | 大连亿联科技股份有限公司 | Feeb双阵列网格系统 |
CN103617164A (zh) * | 2013-10-22 | 2014-03-05 | 小米科技有限责任公司 | 网页预取方法、装置及终端设备 |
CN106156236A (zh) * | 2014-10-28 | 2016-11-23 | 李光耀 | 视觉网页分析系统与方法 |
CN109005282A (zh) * | 2018-06-27 | 2018-12-14 | 维沃移动通信有限公司 | 一种显示方法及移动终端 |
CN109657208A (zh) * | 2017-10-10 | 2019-04-19 | 株式会社理光 | 网页相似度计算方法、装置、设备、计算机可读存储介质 |
-
2010
- 2010-04-26 CN CN201010157766.2A patent/CN102236658B/zh active Active
Non-Patent Citations (2)
Title |
---|
杜鹏: "基于视觉特征的WEB页面信息抽取技术的研究", 《中国优秀硕士学位论文全文数据库》 * |
王玉平: "基于视觉特征的Web页面信息抽取算法", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103353889A (zh) * | 2013-07-03 | 2013-10-16 | 大连亿联科技股份有限公司 | Feeb双阵列网格系统 |
CN103617164A (zh) * | 2013-10-22 | 2014-03-05 | 小米科技有限责任公司 | 网页预取方法、装置及终端设备 |
CN103617164B (zh) * | 2013-10-22 | 2017-02-01 | 小米科技有限责任公司 | 网页预取方法、装置及终端设备 |
CN106156236A (zh) * | 2014-10-28 | 2016-11-23 | 李光耀 | 视觉网页分析系统与方法 |
CN106156236B (zh) * | 2014-10-28 | 2020-01-31 | 李光耀 | 视觉网页分析系统与方法 |
US10664647B2 (en) | 2014-10-28 | 2020-05-26 | Kuang-Yao Lee | Visual web page analysis system and method |
CN109657208A (zh) * | 2017-10-10 | 2019-04-19 | 株式会社理光 | 网页相似度计算方法、装置、设备、计算机可读存储介质 |
CN109005282A (zh) * | 2018-06-27 | 2018-12-14 | 维沃移动通信有限公司 | 一种显示方法及移动终端 |
Also Published As
Publication number | Publication date |
---|---|
CN102236658B (zh) | 2015-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102253979B (zh) | 基于视觉的web页面萃取方法 | |
CN101937438B (zh) | 网页内容提取方法和装置 | |
US8819028B2 (en) | System and method for web content extraction | |
US8843815B2 (en) | System and method for automatically extracting metadata from unstructured electronic documents | |
CN102163187B (zh) | 文档标记方法和装置 | |
CN107832229A (zh) | 一种基于nlp的系统测试用例自动生成方法 | |
US7707488B2 (en) | Analyzing lines to detect tables in documents | |
CN106294107A (zh) | 生成网页页面的测试用例的方法和装置 | |
CN110704570A (zh) | 一种连续页版式文档结构化信息提取方法 | |
CN110633458A (zh) | 裁判文书的生成方法和生成装置 | |
CN101385023A (zh) | 矢量图形文档中的列表检测 | |
CN102236658B (zh) | 网页内容提取方法和装置 | |
CN101667118A (zh) | 多语言版本的开发、替换方法及装置 | |
CN103491116A (zh) | 正文相关的结构化数据的处理方法及装置 | |
Evert | A Lightweight and Efficient Tool for Cleaning Web Pages. | |
CN105320734A (zh) | 一种网页核心内容提取方法 | |
CN104598462A (zh) | 提取结构化数据的方法及装置 | |
CN103440239A (zh) | 一种基于功能区域识别的网页切分方法及装置 | |
US20130124684A1 (en) | Visual separator detection in web pages using code analysis | |
CN103500158A (zh) | 批注电子文档的方法和装置 | |
Apostolova et al. | Combining visual and textual features for information extraction from online flyers | |
CN103150331A (zh) | 一种提供搜索引擎标签的方法和装置 | |
CN107145591B (zh) | 一种基于标题的网页有效元数据内容提取方法 | |
CN103778141A (zh) | 一种混合pdf图书目录自动抽取算法 | |
CN106446139A (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 |