CN106802899B - 网页正文抽取方法及装置 - Google Patents
网页正文抽取方法及装置 Download PDFInfo
- Publication number
- CN106802899B CN106802899B CN201510845613.XA CN201510845613A CN106802899B CN 106802899 B CN106802899 B CN 106802899B CN 201510845613 A CN201510845613 A CN 201510845613A CN 106802899 B CN106802899 B CN 106802899B
- Authority
- CN
- China
- Prior art keywords
- text
- nodes
- node
- impurity
- text extraction
- 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
Images
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/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9577—Optimising the visualization of content, e.g. distillation of HTML documents
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 Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种网页正文抽取方法及装置,该方法包括生成包括正文节点信息和杂质节点信息的正文抽取模板,其中,不同域名的网页对应不同的正文抽取模板;获取与目标网页匹配的正文抽取模板;根据所述获取的正文抽取模板中的正文节点信息获取所述目标网页的正文节点,在所述获取的正文节点中剔除所述杂质节点信息对应的杂质节点。由于正文抽取模板中包括有正文节点信息和杂质节点信息,在抽取正文信息时可根据杂质节点信息剔除杂质节点,因此,可得到正确率较高的网页正文信息。
Description
技术领域
本发明涉及互联网技术领域,更具体的说,本发明涉及一种网页正文抽取方法及装置。
背景技术
目前,网页正文抽取一般采用基于模板的正文抽取方式,而现有正文抽取模板的生成则是从大量结构相似的网页中,寻找大块内容文本位置,统计出最有可能是正文的节点,即计算文字长度和总长度的比值,统计出该比值最高的节点作为正文节点,进而生成正文抽取模板。而在进行网页正文抽取时,判断需要抽取的目标网页的模板类型,然后按照匹配的模板的正文节点对该目标网页的正文节点进行正文抽取,但在正文节点内,会出现相关文章或推荐订阅等杂质节点的杂质信息,即现有技术的正文抽取模板虽然将正文节点的信息抽取出来,但却没有将正文节点中杂质节点的杂质信息过滤掉;
另外,当网页底部有大段的免责申明等注脚,或正文主要以图片为主而文字较少时,根据上述现有技术的正文抽取模板判断出的正文节点往往是错误的。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种网页正文抽取方法和相应的装置。
为了解决上述技术问题,本发明实施例提供的一种网页正文抽取方法,其包括:
生成包括正文节点信息和杂质节点信息的正文抽取模板,其中,不同域名的网页对应不同的正文抽取模板;
获取与目标网页匹配的正文抽取模板;
根据所述获取的正文抽取模板中的正文节点信息获取所述目标网页的正文节点,在所述获取的正文节点中剔除所述杂质节点信息对应的杂质节点。
其中,生成包括正文节点信息和杂质节点信息的正文抽取模板包括:
确定具有同一域名的网页的正文节点;
确定所述正文节点中的杂质节点;
根据所述正文节点和所述杂质节点生成对应的正文抽取模板。
其中,确定具有同一域名的网页的正文节点包括:
获取具有同一域名的多个样本网页;
对该多个样本网页的网页结构进行对比确定所述正文节点。
其中,对该多个样本网页的网页结构进行对比确定所述正文节点包括:
从多个样本网页任意选择两个样本网页;
对所述两个样本网页从根节点遍历其文档对象模型树,当两个节点的孩子节点的数量或标签名不同时,停止遍历并标记当前的两个节点;
当所有样本网页都两两比较之后,确定标记最多的节点为所述正文节点。
其中,确定所述正文节点中的杂质节点包括:
将正文节点内的节点进行比较;
根据比较结果,将相似度高于阈值的节点作为杂质节点。
另外,还包括:
对得到的正文信息按照预定过滤规则进行再次过滤。
另外,根据本发明实施例的一种网页正文抽取装置,其包括:
生成处理模块,用于生成包括正文节点信息和杂质节点信息的正文抽取模板,其中,不同域名的网页对应不同的正文抽取模板;
获取处理模块,用于获取与目标网页匹配的正文抽取模板;
正文抽取处理模块,用于根据所述获取的正文抽取模板中的正文节点信息获取所述目标网页的正文节点,在所述获取的正文节点中剔除所述杂质节点信息对应的杂质节点。
其中,生成处理模块包括:
正文节点确定子模块,用于确定具有同一域名的网页的正文节点;
杂质节点确定子模块,用于确定所述正文节点中的杂质节点;
正文抽取模板生成子模块,用于根据所述正文节点和所述杂质节点生成对应的正文抽取模板。
其中,正文节点确定子模块包括:
获取子模块,用于获取具有同一域名的多个样本网页;
网页结构对比确定子模块,用于对该多个样本网页的网页结构进行对比确定所述正文节点。
其中,网页结构对比确定子模块包括:
选择子模块,用于从多个样本网页任意选择两个样本网页;
遍历子模块,用于对所述两个样本网页从根节点遍历其文档对象模型树,当两个节点的孩子节点的数量或标签名不同时,停止遍历并标记当前的两个节点;
第一确定子模块,用于当所有样本网页都两两比较之后,确定标记最多的节点为正文节点。
其中,杂质节点确定子模块包括:
比较子模块,用于将正文节点内的节点进行比较;
第二确定子模块,用于根据比较结果,将相似度高于阈值的节点作为杂质节点。。
另外,还包括:
过滤处理模块,用于对得到的正文信息还按照预定过滤规则对杂质进行再次过滤。
另外,根据本发明实施例的用于网页正文抽取装置,其包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
生成包括正文节点信息和杂质节点信息的正文抽取模板,其中,不同域名的网页对应不同的正文抽取模板;
获取与目标网页匹配的正文抽取模板;
根据所述获取的正文抽取模板中的正文节点信息获取所述目标网页的正文节点,在所述获取的正文节点中剔除所述杂质节点信息对应的杂质节点。
另外,还包括经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
确定具有同一域名的网页的正文节点;
确定所述正文节点中的杂质节点;
根据所述正文节点和所述杂质节点生成对应的正文抽取模板。
另外,还包括经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令::
获取具有同一域名的多个样本网页;
对该多个样本网页的网页结构进行对比确定所述正文节点。
另外,还包括经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
从多个样本网页任意选择两个样本网页;
对所述两个样本网页从根节点遍历其文档对象模型树,当两个节点的孩子节点的数量或标签名不同时,停止遍历并标记当前的两个节点;
当所有样本网页都两两比较之后,确定标记最多的节点为所述正文节点。
另外,还包括经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
对得到的正文信息按照预定过滤规则进行再次过滤。
根据本发明实施例提供的网页正文抽取方法及装置,通过生成包括正文节点信息和杂质节点信息的正文抽取模板,其中,不同域名的网页对应不同的正文抽取模板;获取与目标网页匹配的正文抽取模板;根据所述获取的正文抽取模板中的正文节点信息获取所述目标网页的正文节点,在所述获取的正文节点中剔除所述杂质节点信息对应的杂质节点。由于正文抽取模板中包括有正文节点信息和杂质节点信息,在抽取正文信息时可根据杂质节点信息剔除杂质节点,因此,可得到正确率较高的网页正文信息。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1是根据本发明网页正文抽取方法的第一具体实施例流程图;
图2是图1中生成包括正文节点信息和杂质节点信息的正文抽取模板的一个具体实施例流程图;
图3是根据本发明网页正文抽取方法的第二具体实施例流程图;
图4是根据本发明网页正文抽取方法的第三具体实施例流程图;
图5是本发明具体实施例的一个网页页面示意图;
图6是图5所示网页页面底部的二维码图片示意图;
图7是根据本发明网页正文抽取方法对图5所示页面进行正文抽取后得到的网页页面示意图;
图8是根据本发明的网页正文抽取装置的第一具体实施例整体组成示意图;
图9是图8中生成处理模块的一个具体实施例组成示意图;
图10是图9中正文节点确定子模块的一个具体实施例组成示意图;
图11是图10中网页结构对比确定子模块的一个具体实施例组成示意图;
图12是图9中杂质节点确定子模块的一个具体实施例组成示意图;
图13是根据本发明网页正文抽取装置的第二具体实施例整体示意图;
图14是根据本发明网页正文抽取装置的第三具体实施例整体示意图;
图15是根据本发明用于网页正文抽取的装置的具体实施例结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,其为根据本发明网页正文抽取方法的第一具体实施例流程图。在本实施例中,实现网页正文抽取主要包括如下步骤:
步骤S1,生成包括正文节点信息和杂质节点信息的正文抽取模板,其中,不同域名的网页对应不同的正文抽取模板;
部分网页的正文节点之内,还会有部分与正文无关的子节点,如果不把这些作为杂质的子节点(下述统一称为杂质节点)去掉,会直接影响到用户的阅读体验。而对于相同站点的网页或者说具有相同域名的网页,可以认为这些杂质节点的内容是相同的,比如相同的文字内容,相同的图片路径等,通过对节点内容的对比,可以筛选出这样的杂质节点,同时大部分杂质节点都有特定的结构,这样就能根据特定的规则将这部分杂质节点筛选过滤掉,因此,本实施例生成的正文抽取模板中不但包括正文节点信息也包括杂质节点信息。
步骤S2,获取与目标网页匹配的正文抽取模板;具体实现时,例如可根据目标网页的URL,查询模板库获取与该目标网页匹配的正文抽取模板。
步骤S3,根据所述获取的正文抽取模板中的正文节点信息获取所述目标网页的正文节点,在所述获取的正文节点中剔除所述杂质节点信息对应的杂质节点。
具体实现时,获取的正文抽取模板中包括有正文节点信息和杂质节点信息,本步骤根据正文抽取模板中的正文节点信息在待抽取的目标网页中找出正文节点,再进一步根据正文抽取模板中的杂质节点信息找出正文节点中包含的杂质节点,然后将正文节点中的杂质节点剔除后即可得到正文信息。
实际中,作为一个可选实施例,结合图2,本实施例中对于步骤S1生成包括正文节点信息和杂质节点信息的正文抽取模板的方式有多种,例如,可采用如下方式,即:
步骤S11,确定具有同一域名的网页的正文节点;
具有同一域名的网页其网页结构实际上是相似的,因此,本实施例中具体实现时,可通过网页结构确定正文节点,即首先获取具有同一域名的多个样本网页;然后对该多个样本网页的网页结构进行对比确定所述正文节点;
以一个具体例子来说,对该多个样本网页的网页结构进行对比确定该具有同一域名网页的正文节点例如可采用如下方式,即,从多个样本网页任意选择两个样本网页;对所述两个样本网页从根节点遍历其文档对象模型树,当两个节点的孩子节点的数量或标签名不同时,停止遍历并标记当前的两个节点;当所有样本网页都两两比较之后,确定标记最多的节点为所述正文节点。
本实施例中通过对具有同一域名网页的任意两个样本网页的文档对象模型树结构的对比,可以准确找到正文节点,避免了使用文字长度找正文节点出现的偏差。
需要说明的,本实施例中采用的是对比具有同一域名的两个网页的网页结构确定正文节点,实际中为了使确定的正文节点的正确率更好,也可以将大量相似的具有同一域名的网页进行比较,这里不对进行比较的具体网页数量进行限定。
步骤S12,确定所述正文节点中的杂质节点;
具体实现时,本实施例中确定所述正文节点中的杂质节点可采用如下方式,即将正文节点内的节点进行比较;根据比较结果,将相似度高于阈值的节点作为杂质节点,实际中,具体统计节点相似度时可采用多种方式,例如一种可行的方式是对正文节点内的节点进行相似度排序;将相似度高于阈值的节点作为杂质节点。
步骤S13,根据所述正文节点和所述杂质节点生成对应的正文抽取模板;
具体实现时,本实施例的具有同一域名的网页的正文抽取模板中可以该具有同一域名网页的统一资源定位符正则表达式作为该模板的标识符,而该具有同一域名的网页的正文抽取模板中的正文节点和杂质节点可以该正文节点和杂质节点的标签名和标签属性作为标识符,实际中也可以采用其他类型的标识符,这里不做具体限定。
需要说明的,正文抽取模板可以是自动学习和生成的,即可以不断生成新的正文抽取模板,例如步骤S2中,若没有获取到与目标网页匹配的正文抽取模板,则后续可自动学习生成该未匹配的目标网页对应的正文抽取模板。
另外,本实施例中杂质节点是可自动进行识别和判断的,但即使按照杂质节点剔除杂质信息后得到正文信息中还是有可能有一些没有清除的杂质,例如,正文中的文字内容较短且包含“关注XX号”等文字的节点,或者根据需要去除视频节点等,因此,还可以进一步按照一定的过滤规则进行杂质的过滤,结合图3,该图是根据本发明网页正文抽取方法的第二具体实施例流程图,本实施例与上述第一实施例不同的是在步骤S3之后还包括步骤S4,即:对得到的正文信息还按照预定过滤规则进行再次过滤,具体实现时,预定过滤规则可根据实际情况进行设定,这里不做具体限定。
另外,参考图4,该图是根据本发明网页正文抽取方法的第三具体实施例流程图,本实施例主要如下步骤:
步骤S21,确定具有同一域名的网页的正文节点,具体包括:获取具有同一域名的网页的多个样本网页;对该多个样本网页的网页结构进行对比确定该具有同一域名的网页的正文节点;
具有同一域名的网页其网页结构实际上是相似的,因此,本实施例可通过网页结构确定具有同一域名的网页的正文节点,以一个具体例子来说,对多个样本网页的网页结构进行对比可确定该具有同一域名网页的正文节点,例如可采用如下方式:从多个样本网页任意选择两个样本网页;对所述两个样本网页从根节点遍历其文档对象模型树,当两个节点的孩子节点的数量或标签名不同时,停止遍历并标记当前的两个节点;当所有样本网页都两两比较之后,确定标记最多的节点为正文节点。
需要说明的,本实施例中采用的是对比两个具有同一域名的网页的网页结构确定正文节点,实际中为了使确定的正文节点的正确率更好,也可以将大量相似的具有同一域名的网页进行比较,这里不对进行比较的具体网页数量进行限定。
步骤S22,根据所述确定的正文节点生成对应的正文抽取模板,即生成该具有同一域名的网页对应的包括正文节点信息的正文抽取模板,不同域名的网页对应不同的正文抽取模板,具体实现时,为了便于识别和匹配,本实施例的具有同一域名的网页的正文抽取模板中可以该具有同一域名网页的统一资源定位符正则表达式作为该模板的标识符,而该具有同一域名网页的正文抽取模板中的正文节点信息可以该正文节点的标签名和标签属性作为标识符,实际中也可以采用其他类型的标识符,这里不做具体限定。
步骤S23,获取与目标网页匹配的正文抽取模板;具体实现时,例如可根据目标网页的URL,查询模板库获取与该目标网页匹配的正文抽取模板,实际中也可以采用其他的匹配方式,这里不做具体限定。
步骤S24,根据所述获取的正文抽取模板中的正文节点信息获取所述目标网页的正文节点得到正文信息。
具体实现时,获取的正文抽取模板中包括有正文节点信息,本步骤根据正文抽取模板中的正文节点信息在待抽取的目标网页中找出相应正文节点即可得到正文信息。
需要说明的,上述步骤S24获得正文信息可能全部为所需的正文信息,也可能包括不需要的杂质内容,因此,实际中也可以进一步过滤杂质,这里不做具体限定。
下面对第二具体实施例进行举例说明。
本实施例中以某某财经的网页为例,其三个网页的网址如下:
http://finance.XXX.com.cn/stock/gujiayidong/20150803/131322861376.shtml
http://finance.XXX.com.cn/stock/gujiayidong/20150803/101322860071.shtml
http://finance.XXX.com.cn/stock/jsy/20150803/140922861666.shtml
上述三个网页的域名都是同一个,即:finance.XXX.com.cn,即上述三个网页属于具有同一域名的网页。如图所示,对这些网页按照正文节点进行正文抽取后,如图5所示,可以看到这些网页的正文中还有部分杂质信息,例如,图片下方的链接文字、左下角的内嵌广告图片以及最后的“进入绿盟科技吧讨论”等为杂质节点的杂质信息内容,另外,参考图6,同时在网页底部还有二维码图片,本实施例中首先可生成该具有同一域名的网页的正文抽取模板,即首先根据三个具有同一域名的网页源码的文档对象模型树(即dom树)的对比确定正文节点,例如可识别<div class=″article article_16″id=″artibody″>节点内的结构有所差异,进而确定该节点为正文节点,然后,对正文节点内的内容进行对比,可以发现二维码图片、广告图片以及最后“进入绿盟科技吧讨论”的节点内容非常相似,可以判断这些内容的节点为杂质节点,进而可根据判断出的正文节点信息和杂质节点信息生成该某某财经类型网页的正文抽取模板。
而在正文抽取阶段,可首先根据该某某财经类型网页的正文抽取模板找出正文节点,进而在正文节点中过滤正文抽取模板中的杂质节点内容,即把二维码图片、广告图片以及最后“进入绿盟科技吧讨论”的杂质节点过滤掉,最后还可以根据特定的过滤规则进行杂质信息的再次过滤,如图片下方链接文字的节点(例如,图5中的“消息股汇总:7月31日盘前提示蒙发利强势涨停”等三个链接文字的节点)满足连续出现链接文字等过滤规则,可将该节点的信息过滤掉得到最终的正文信息,即图7所示内容。
下面说明本发明的另一方面。
参考图8,该图为根据本发明的网页正文抽取装置的第一具体实施例整体示意图,本实施例的网页正文抽取装置主要包括:
生成处理模块1,用于生成包括正文节点信息和杂质节点信息的正文抽取模板,其中,不同域名的网页对应不同的正文抽取模板;
本实施例的生成处理模块1生成的正文抽取模板中不但包括正文节点信息也包括杂质节点信息,另外,本实施例的具有同一域名的网页的正文抽取模板中可以以该类网页的统一资源定位符正则表达式作为该模板的标识符,而该类网页的正文抽取模板中的正文节点和杂质节点可以该正文节点和杂质节点的标签名和标签属性作为标识符,实际中也可以采用其他类型的标识符,这里不做具体限定。
获取处理模块2,用于获取与目标网页匹配的正文抽取模板,本实施例中获取处理模块2例如可根据目标网页的URL,查询模板库获取与该目标网页匹配的正文抽取模板,这里不做具体限定;
正文抽取处理模块3,用于根据所述获取的正文抽取模板中的正文节点信息获取所述目标网页的正文节点,在所述获取的正文节点中剔除所述杂质节点信息对应的杂质节点。
具体实现时,本实施例的正文抽取处理模块3可根据正文抽取模板中的正文节点信息在待抽取的目标网页中找出正文节点,再进一步根据正文抽取模板中的杂质节点信息找出正文节点中包含的杂质节点,然后将正文节点中的杂质节点剔除后即可得到正文信息。
实际中,作为一个可选实施例,参考图9,上述图8中的生成处理模块1可包括:正文节点确定子模块11、杂质节点确定子模块12和正文抽取模板生成子模块13,其中
正文节点确定子模块11,用于确定具有同一域名的网页的正文节点;
本实施例中具有同一域名的网页其网页结构实际上是相似的,因此,具体实现时,可通过网页结构确定正文节点,作为一个可选的实施例,结合图10,正文节点确定子模块11可包括:
获取子模块111,用于获取具有同一域名的多个样本网页;
网页结构对比确定子模块112,用于对该多个样本网页的网页结构进行对比确定所述正文节点,例如,结合图11,网页结构对比确定子模块112可包括:
选择子模块1121,用于从多个样本网页任意选择两个样本网页;
遍历子模块1122,用于对所述两个样本网页从根节点遍历其文档对象模型树,当两个节点的孩子节点的数量或标签名不同时,停止遍历并标记当前的两个节点;
第一确定子模块1123,用于当所有样本网页都两两比较之后,确定标记最多的节点为正文节点。
本实施例中通过对具有同一域名的网页的任意两个样本网页的文档对象模型树结构的对比,可以准确找到正文节点,避免了使用文字长度找正文节点出现的偏差。
需要说明的,本实施例中采用对比具有同一域名的两个网页的网页结构确定正文节点,实际中为了使确定的正文节点的正确率更好,也可以将大量相似的具有同一域名的网页进行比较,这里不对进行比较的具体网页数量进行限定。
另外,杂质节点确定子模块12主要用于确定所述正文节点中的杂质节点;具体实现时,作为一个具体实施例,结合图12,杂质节点确定子模块12可包括:
比较子模块121,用于将正文节点内的节点进行比较;
第二确定子模块122,用于根据比较结果,将相似度高于阈值的节点作为杂质节点。
另外,正文抽取模板生成子模块13主要用于按照上述确定的正文节点和所述杂质节点生成对应的正文抽取模板,这里不再赘述。
需要说明的,正文抽取模板可以是自动学习和生成的,即若获取处理模块没有获取到与目标网页匹配的与正文抽取模板,则后续可自动学习生成该未匹配的目标网页对应的正文抽取模板。
另外,本实施例中杂质节点是自动进行识别和判断的,因此,即使按照杂质节点剔除杂质信息后得到正文信息中还是有可能有一些没有清除的杂质,结合图13,该图是根据本发明网页正文抽取装置的第二具体实施例的整体示意图,本实施例与上述第一实施例不同的是本实施例中还包括:过滤处理模块4,本实施例中过滤处理模块4主要用于对得到的正文信息还按照预定过滤规则进行再次过滤,具体实现时,预定过滤规则可根据实际情况进行设定,这里不做具体限定。
参考图14,该图是根据本发明的网页正文抽取装置的第三具体实施例整体示意图,本实施例的网页正文抽取装置主要包括:
正文节点确定处理模块M1,用于确定具有同一域名的网页的正文节点,具体包括:获取具有同一域名网页的多个样本网页;对该多个样本网页的网页结构进行对比确定该具有同一域名网页的正文节点;
具有同一域名的网页其网页结构实际上是相似的,因此,可通过网页结构确定具有同一域名网页的正文节点,以一个具体例子来说,对多个样本网页的网页结构进行对比可确定该具有同一域名的网页的正文节点,例如可采用如下方式:从多个样本网页任意选择两个样本网页;对所述两个样本网页从根节点遍历其文档对象模型树,当两个节点的孩子节点的数量或标签名不同时,停止遍历并标记当前的两个节点;当所有样本网页都两两比较之后,确定标记最多的节点为正文节点。
需要说明的,本实施例中采用对比两个具有同一域名的网页的网页结构确定正文节点,实际中为了使确定的正文节点的正确率更好,也可以将大量相似的具有同一域名的网页进行比较,这里不对进行比较的具体网页数量进行限定。
正文抽取模板生成处理模块M2,主要用于根据所述确定的正文节点生成对应的正文抽取模板,即生成该具有同一域名的网页对应的包括正文节点信息的正文抽取模板,不同域名的网页对应不同的正文抽取模板,具体实现时,为了便于识别和匹配,本实施例的具有同一域名的网页的正文抽取模板中可以该具有同一域名的网页的统一资源定位符正则表达式作为该模板的标识符,而该具有同一域名的网页的正文抽取模板中的正文节点信息可以该正文节点的标签名和标签属性作为标识符,实际中也可以采用其他类型的标识符,这里不做具体限定。
正文抽取模板获取处理模块M3,主要用于获取与目标网页匹配的正文抽取模板;具体实现时,例如可根据目标网页的URL,查询模板库获取与该目标网页匹配的正文抽取模板,实际中也可以采用其他的匹配方式,这里不做具体限定。
正文抽取处理模块M4,主要用于根据所述获取的正文抽取模板中的正文节点信息获取所述目标网页的正文节点得到正文信息。
具体实现时,获取的正文抽取模板中包括有正文节点信息,本步骤根据正文抽取模板中的正文节点信息在待抽取的目标网页中找出相应正文节点即可得到正文信息。
需要说明的,上述正文抽取处理模块M4得到的正文信息可能全部为所需的正文信息,也可能包括不需要的杂质内容,因此,实际中也可以进一步过滤杂质,这里不做具体限定。
参考图15,该图是根据本发明用于网页正文抽取的装置800的一个具体实施例结构示意图,本实施例中,装置800可以是计算机或者其他实现计算机功能或实现智能设备功能等可处理应用程序的设备。
如图15所示,装置800可以包括以下一个或多个组件:处理组件801,存储器802等,为实现其他功能,装置800也可能包括其他功能组件,这里不做具体限定。
处理组件801通常控制装置800的整体操作,诸如与网页获取,正文抽取,存储等相关联的操作。处理组件801可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤,例如,经配置以由一个或者一个以上处理器820执行所述一个或者一个以上程序包含用于进行以下操作的指令:
生成包括正文节点信息和杂质节点信息的正文抽取模板,其中,不同域名的网页对应不同的正文抽取模板;
获取与目标网页匹配的正文抽取模板;
根据所述获取的正文抽取模板中的正文节点信息获取所述目标网页的正文节点,在所述获取的正文节点中剔除所述杂质节点信息对应的杂质节点。
或者,例如,经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
确定具有同一域名的网页的正文节点;
确定所述正文节点中的杂质节点;
根据所述正文节点和所述杂质节点生成对应的正文抽取模板。
或者,经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令::
获取具有同一域名的多个样本网页;
对该多个样本网页的网页结构进行对比确定所述正文节点。
或者,经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
从多个样本网页任意选择两个样本网页;
对所述两个样本网页从根节点遍历其文档对象模型树,当两个节点的孩子节点的数量或标签名不同时,停止遍历并标记当前的两个节点;
当所有样本网页都两两比较之后,确定标记最多的节点为所述正文节点。
以及,经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
对得到的正文信息按照预定过滤规则进行再次过滤。
需要说明的,实际中还可以配置其他处理器执行的指令,这里不做具体限定。
此外,本实施例中处理组件801可以包括一个或多个模块,便于处理组件801和其他组件之间的交互。
存储器802被配置为存储各种类型的数据以支持在设备800的操作。这些数据的示例包括用于在装置800上操作的任何应用程序或方法的指令,其他例如正文节点信息和杂质节点信息,正文抽取模板、网页数据以及其他数据等。存储器802可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
在示例性实施例中,装置800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器802,上述指令可由装置800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由计算机的处理器执行时,使得计算机能够执行一种用于网页正文抽取的方法,所述方法包括:生成包括正文节点信息和杂质节点信息的正文抽取模板,其中,不同域名的网页对应不同的正文抽取模板;获取与目标网页匹配的正文抽取模板;根据所述获取的正文抽取模板中的正文节点信息获取所述目标网页的正文节点,在所述获取的正文节点中剔除所述杂质节点信息对应的杂质节点。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种网页正文抽取方法,其特征在于,包括:
生成包括正文节点信息和杂质节点信息的正文抽取模板,包括:
从具有同一域名的多个样本网页任意选择两个样本网页;对所述两个样本网页从根节点遍历其文档对象模型树,当两个节点的孩子节点的数量或标签名不同时,停止遍历并标记当前的两个节点;当所有样本网页都两两比较之后,确定标记最多的节点为正文节点;
确定所述正文节点中的杂质节点,包括:将正文节点内的节点进行比较;根据比较结果,将相似度高于阈值的节点作为杂质节点;
根据所述正文节点和所述杂质节点生成对应的正文抽取模板,其中,不同域名的网页对应不同的正文抽取模板;
获取与目标网页匹配的正文抽取模板;
根据所述获取的正文抽取模板中的正文节点信息获取所述目标网页的正文节点,在所述获取的正文节点中剔除与所述目标网页匹配的正文抽取模板中的所述杂质节点信息对应的杂质子节点后,得到正文信息。
2.根据权利要求1所述的方法,其特征在于,还包括:
对得到的正文信息按照预定过滤规则进行再次过滤。
3.一种网页正文抽取装置,其特征在于,包括:
生成处理模块,用于生成包括正文节点信息和杂质节点信息的正文抽取模板,包括:从具有同一域名的多个样本网页任意选择两个样本网页;对所述两个样本网页从根节点遍历其文档对象模型树,当两个节点的孩子节点的数量或标签名不同时,停止遍历并标记当前的两个节点;当所有样本网页都两两比较之后,确定标记最多的节点为正文节点;
确定所述正文节点中的杂质节点,包括:将正文节点内的节点进行比较;根据比较结果,将相似度高于阈值的节点作为杂质节点;
根据所述正文节点和所述杂质节点生成对应的正文抽取模板,其中,不同域名的网页对应不同的正文抽取模板;
获取处理模块,用于获取与目标网页匹配的正文抽取模板;
正文抽取处理模块,用于根据所述获取的正文抽取模板中的正文节点信息获取所述目标网页的正文节点,在所述获取的正文节点中剔除与所述目标网页匹配的正文抽取模板中的所述杂质节点信息对应的杂质子节点后,得到正文信息。
4.一种用于网页正文抽取的装置,其特征在于,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
生成包括正文节点信息和杂质节点信息的正文抽取模板,包括:从具有同一域名的多个样本网页任意选择两个样本网页;对所述两个样本网页从根节点遍历其文档对象模型树,当两个节点的孩子节点的数量或标签名不同时,停止遍历并标记当前的两个节点;当所有样本网页都两两比较之后,确定标记最多的节点为正文节点;
确定所述正文节点中的杂质节点,包括:将正文节点内的节点进行比较;根据比较结果,将相似度高于阈值的节点作为杂质节点;
根据所述正文节点和所述杂质节点生成对应的正文抽取模板,其中,不同域名的网页对应不同的正文抽取模板;
获取与目标网页匹配的正文抽取模板;
根据所述获取的正文抽取模板中的正文节点信息获取所述目标网页的正文节点,在所述获取的正文节点中剔除所述杂质节点信息对应的杂质节点。
5.根据权利要求4所述的装置,其特征在于,还包括,经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
对得到的正文信息按照预定过滤规则进行再次过滤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510845613.XA CN106802899B (zh) | 2015-11-26 | 2015-11-26 | 网页正文抽取方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510845613.XA CN106802899B (zh) | 2015-11-26 | 2015-11-26 | 网页正文抽取方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106802899A CN106802899A (zh) | 2017-06-06 |
CN106802899B true CN106802899B (zh) | 2020-11-24 |
Family
ID=58976494
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510845613.XA Active CN106802899B (zh) | 2015-11-26 | 2015-11-26 | 网页正文抽取方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106802899B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107590288B (zh) * | 2017-10-11 | 2020-09-18 | 百度在线网络技术(北京)有限公司 | 用于抽取网页图文块的方法和装置 |
CN110020296A (zh) * | 2017-10-31 | 2019-07-16 | 北京国双科技有限公司 | 一种提取新闻网页正文的方法及装置 |
CN109033282B (zh) * | 2018-07-11 | 2021-07-23 | 山东邦尼信息科技有限公司 | 一种基于抽取模板的网页正文抽取方法及装置 |
CN110377796B (zh) * | 2019-07-25 | 2021-11-02 | 中南民族大学 | 基于dom树的正文抽取方法、装置、设备及存储介质 |
CN114528811B (zh) * | 2022-01-21 | 2022-09-02 | 北京麦克斯泰科技有限公司 | 文章内容抽取方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102193944A (zh) * | 2010-03-12 | 2011-09-21 | 三星电子(中国)研发中心 | 网页主题内容抽取方法 |
CN102541874A (zh) * | 2010-12-16 | 2012-07-04 | 中国移动通信集团公司 | 网页正文内容提取方法及装置 |
CN102681994A (zh) * | 2011-03-07 | 2012-09-19 | 北京百度网讯科技有限公司 | 一种网页信息抽取方法及系统 |
CN102810097A (zh) * | 2011-06-02 | 2012-12-05 | 高德软件有限公司 | 网页正文内容提取方法及装置 |
CN103530429A (zh) * | 2013-11-04 | 2014-01-22 | 北京中搜网络技术股份有限公司 | 一种网页正文抽取的方法 |
CN103955529A (zh) * | 2014-05-12 | 2014-07-30 | 中国科学院计算机网络信息中心 | 一种互联网信息搜索聚合呈现方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100432996C (zh) * | 2004-12-07 | 2008-11-12 | 国际商业机器公司 | 基于网页页面布局提取网页核心内容的系统、方法 |
US7765236B2 (en) * | 2007-08-31 | 2010-07-27 | Microsoft Corporation | Extracting data content items using template matching |
CN101833554B (zh) * | 2009-03-09 | 2012-09-26 | 富士通株式会社 | 产生抽取模板的方法、设备和抽取网页内容的方法和设备 |
CN101944094B (zh) * | 2009-07-06 | 2014-06-18 | 富士通株式会社 | 网页信息提取方法和装置 |
CN101727498A (zh) * | 2010-01-15 | 2010-06-09 | 西安交通大学 | 一种基于web结构的网页信息自动提取方法 |
CN102651002B (zh) * | 2011-02-28 | 2017-08-11 | 深圳市世纪光速信息技术有限公司 | 一种网页信息抽取方法及其系统 |
-
2015
- 2015-11-26 CN CN201510845613.XA patent/CN106802899B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102193944A (zh) * | 2010-03-12 | 2011-09-21 | 三星电子(中国)研发中心 | 网页主题内容抽取方法 |
CN102541874A (zh) * | 2010-12-16 | 2012-07-04 | 中国移动通信集团公司 | 网页正文内容提取方法及装置 |
CN102681994A (zh) * | 2011-03-07 | 2012-09-19 | 北京百度网讯科技有限公司 | 一种网页信息抽取方法及系统 |
CN102810097A (zh) * | 2011-06-02 | 2012-12-05 | 高德软件有限公司 | 网页正文内容提取方法及装置 |
CN103530429A (zh) * | 2013-11-04 | 2014-01-22 | 北京中搜网络技术股份有限公司 | 一种网页正文抽取的方法 |
CN103955529A (zh) * | 2014-05-12 | 2014-07-30 | 中国科学院计算机网络信息中心 | 一种互联网信息搜索聚合呈现方法 |
Non-Patent Citations (1)
Title |
---|
Web网页正文抽取方法研究;万晶;《中国优秀硕士学位论文全文数据库 信息科技辑》;20100815(第08期);第I139-141页 * |
Also Published As
Publication number | Publication date |
---|---|
CN106802899A (zh) | 2017-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106802899B (zh) | 网页正文抽取方法及装置 | |
WO2018121153A1 (zh) | 一种裁判文书的检索方法及装置 | |
US8381095B1 (en) | Automated document revision markup and change control | |
CN102682098B (zh) | 检测网页内容变更的方法及装置 | |
US10146749B2 (en) | Tracking JavaScript actions | |
CN109743309B (zh) | 一种非法请求识别方法、装置及电子设备 | |
CN110020236B (zh) | 网页解析方法、装置、存储介质、处理器和设备 | |
CN112579623B (zh) | 存储数据的方法、装置、存储介质及设备 | |
US20160019266A1 (en) | Query generating method and query generating device | |
CN112232075A (zh) | 基于时间格式和网页元素特征的文章发布时间识别方法 | |
CN104376061A (zh) | 一种提取网页正文的方法 | |
US10782942B1 (en) | Rapid onboarding of data from diverse data sources into standardized objects with parser and unit test generation | |
CN107015986A (zh) | 一种爬虫爬取网页的方法及装置 | |
CN104899203B (zh) | 一种网页页面的生成方法、装置及终端设备 | |
CN113139033B (zh) | 文本处理方法、装置、设备及存储介质 | |
CN104572874B (zh) | 一种网页信息的抽取方法及装置 | |
KR101221096B1 (ko) | 스팸 관리 장치 및 스팸 관리 방법 | |
CN106897287B (zh) | 网页发布时间抽取方法和用于网页发布时间抽取的装置 | |
CN115796146A (zh) | 一种文件对比方法及装置 | |
CN112417239A (zh) | 网页数据的爬取方法及装置 | |
CN111125087A (zh) | 数据的存储方法及装置 | |
CN115437930A (zh) | 网页应用指纹信息的识别方法及相关设备 | |
CN111949916B (zh) | 一种网页分析方法、装置、设备及存储介质 | |
CN106776654B (zh) | 一种数据搜索方法及装置 | |
CN107992556B (zh) | 一种站点管理方法、装置、电子设备以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |