本发明涉及计算机领域,尤其涉及一种网页正文抽取方法及装置。
背景技术:
在新闻(或者资讯)搜索领域,新闻正文抽取是项必不可少的环节,其正文抽取的质量高低决定了新闻搜索的质量和用户体验。目前新闻正文抽取方法格式各样,主要有基于模板(或包装器)方式抽取。基于模板方式抽取:首先定义模板,然后编写程序解析执行模板得到数据。根据模板生成方式,又可分为:人工模板抽取和自动模板抽取。人工模板抽取。针对抽取的目标站点,人工手工编写模板,模板可以是正则匹配方式,也可以是简单的字符串匹配首位匹配方式。自动模板抽取利用机器学习算法,从目标网站先获取一部分网页数据进行学习训练,获取模板,然后程序利用模板抽取数据。人工编写模板方式的缺点是需要耗费巨大人力资源来撰写模板,并且随着目标网站的变化,维护模板的成本也非常大。无论是人工还是自动产生模板,其假设是网站的数据是通过模板产生,一些大型的网站基本问题不大,也就是不同的入口可能模板不同,但对众多的中小网站而言,其模板化不是很好,利用模板抽取只能抽取大部分的信息,有较多的机会包含垃圾信息。
技术实现要素:
本发明实施例的目的是提供一种网页正文抽取方法及装置,能有效避免现有抽取技术中人工编写和模板的弊端,能有效提取网页内容,兼容性高,杂质去除完整。
为实现上述目的,本发明实施例提供了一种网页正文抽取方法,包括步骤:
下载网页页面,根据所述网页页面获取网页源代码,;
根据所述网页源代码创建dom树,基于所述dom树和所述网页页面的页面样式生成视觉树;
基于所述视觉树定位分支结点,采用优选策略在已定位的分支节点中选取正文结点;
将已选取的正文结点进行去杂质处理,从而生成所述网页页面的正文。
与现有技术相比,本发明公开的网页正文抽取方法通过下载网页页面,根据所述网页页面获取网页源代码,然后根据所述网页源代码创建dom树,基于所述dom树和所述网页页面的页面样式生成视觉树,再基于所述视觉树定位分支结点,采用优选策略在已定位的分支节点中选取正文结点,将已选取的正文结点进行去杂质处理,从而生成所述网页页面的正文,能有效避免现有抽取技术中人工编写和模板的弊端,能有效提取网页内容,兼容性高,杂质去除完整。
作为上述方案的改进,还包括步骤:
将所述网页页面的正文进行重排段落。
作为上述方案的改进,所述去杂质处理具体为:
去除包括广告、版权信息、分类导航栏的杂质。
作为上述方案的改进,基于所述视觉树定位分支结点具体为:
通过视觉渲染引擎对所述视觉树进行渲染后定位分支结点。
作为上述方案的改进,采用优选策略在已定位的分支节点中选取正文结点具体为:
采用优选策略定位出标题节点;
基于所述标题节点自动抽取结构化信息;其中,所述结构化信息包括时间、作者和来源。
本发明实施例还提供了一种网页正文抽取装置,包括:
网页源代码获取模块,用于下载网页页面,根据所述网页页面获取网页源代码;
视觉树生成模块,用于根据所述网页源代码创建dom树,基于所述dom树和所述网页页面的页面样式生成视觉树;
正文结点获取模块,用于基于所述视觉树定位分支结点,采用优选策略在已定位的分支节点中选取正文结点;
正文获取模块,用于将已选取的正文结点进行去杂质处理,从而获得所述网页页面的正文。
与现有技术相比,本发明公开的网页正文抽取装置通过下载网页页面,根据所述网页页面获取网页源代码,然后根据所述网页源代码创建dom树,基于所述dom树和所述网页页面的页面样式生成视觉树,再基于所述视觉树定位分支结点,采用优选策略在已定位的分支节点中选取正文结点,将已选取的正文结点进行去杂质处理,从而生成所述网页页面的正文,能有效避免现有抽取技术中人工编写和模板的弊端,能有效提取网页内容,兼容性高,杂质去除完整。
作为上述方案的改进,还包括:
段落重排模块,用于将所述网页页面的正文进行重排段落。
作为上述方案的改进,所述正文获取模块具体用于去除包括广告、版权信息、分类导航栏的杂质。
作为上述方案的改进,所述正文结点获取模块通过视觉渲染引擎对所述视觉树进行渲染后定位分支结点。
作为上述方案的改进,所述正文结点获取模块具体用于采用优选策略定位出标题节点;基于所述标题节点自动抽取结构化信息;其中,所述结构化信息包括时间、作者和来源。
附图说明
图1是是本发明实施例1提供的一种网页正文抽取方法的流程示意图。
图2是是本发明实施例2提供的一种网页正文抽取方法的流程示意图。
图3是是本发明实施例3提供的一种网页正文抽取装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,是本发明实施例1提供的一种网页正文抽取方法的流程示意图,包括步骤:
s1、下载网页页面,根据所述网页页面获取网页源代码;
s2、根据所述网页源代码创建dom树,基于所述dom树和所述网页页面的页面样式生成视觉树;
s3、基于所述视觉树定位分支结点,采用优选策略在已定位的分支节点中选取正文结点;
优选地,基于所述视觉树定位分支结点具体为:通过视觉渲染引擎对所述视觉树进行渲染后定位分支结点。
s4、将已选取的正文结点进行去杂质处理,从而生成所述网页页面的正文。
其中,所述去杂质处理具体为:去除包括广告、版权信息、分类导航栏的杂质。
具体实施时,通过下载网页页面,根据所述网页页面获取网页源代码,然后根据所述网页源代码创建dom树,基于所述dom树和所述网页页面的页面样式生成视觉树,再基于所述视觉树定位分支结点,采用优选策略在已定位的分支节点中选取正文结点,将已选取的正文结点进行去杂质处理,从而生成所述网页页面的正文,能有效避免现有抽取技术中人工编写和模板的弊端,能有效提取网页内容,兼容性高,杂质去除完整。
在一优选实施例中,作为上述方案的改进,采用优选策略在已定位的分支节点中选取正文结点具体为:
采用优选策略定位出标题节点;
基于所述标题节点自动抽取结构化信息;其中,所述结构化信息包括时间、作者和来源。
优选地,如图2所示,在实施例1的基础上包括步骤:
s5、将所述网页页面的正文进行重排段落。
将抽取后的语料素材能按实际视觉效果完整组合排版,能提高可读性。
参见图3,是本发明实施例3提供的一种网页正文抽取装置的结构示意图,包括:
网页源代码获取模块101,用于下载网页页面,根据所述网页页面获取网页源代码;
视觉树生成模块102,用于根据所述网页源代码创建dom树,基于所述dom树和所述网页页面的页面样式生成视觉树;
正文结点获取模块103,用于基于所述视觉树定位分支结点,采用优选策略在已定位的分支节点中选取正文结点;
正文获取模块104,用于将已选取的正文结点进行去杂质处理,从而获得所述网页页面的正文。
具体实施时,先通过网页源代码获取模块101下载网页页面,根据所述网页页面获取网页源代码,然后通过视觉树生成模块102根据所述网页源代码创建dom树,基于所述dom树和所述网页页面的页面样式生成视觉树,再通过正文结点获取模块103基于所述视觉树定位分支结点,采用优选策略在已定位的分支节点中选取正文结点,接着通过正文获取模块104将已选取的正文结点进行去杂质处理,从而生成所述网页页面的正文,能有效避免现有抽取技术中人工编写和模板的弊端,能有效提取网页内容,兼容性高,杂质去除完整。
优选地,所述网页正文抽取装置100还包括:
段落重排模块,用于将所述网页页面的正文进行重排段落。
优选地,所述正文获取模块具体用于去除包括广告、版权信息、分类导航栏的杂质。
此外,所述正文结点获取模块通过视觉渲染引擎对所述视觉树进行渲染后定位分支结点。
优选地,所述正文结点获取模块具体用于采用优选策略定位出标题节点,并基于所述标题节点自动抽取结构化信息;其中,所述结构化信息包括时间、作者和来源。
综上,本发明公开了一种网页正文抽取方法,通过下载网页页面,根据所述网页页面获取网页源代码,然后根据所述网页源代码创建dom树,基于所述dom树和所述网页页面的页面样式生成视觉树,再基于所述视觉树定位分支结点,采用优选策略在已定位的分支节点中选取正文结点,将已选取的正文结点进行去杂质处理,从而生成所述网页页面的正文,能有效避免现有抽取技术中人工编写和模板的弊端,能有效提取网页内容,兼容性高,杂质去除完整。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。