[发明专利]一种基于文字分布特征的网页正文提取方法无效
申请号: | 201210397240.0 | 申请日: | 2012-10-18 |
公开(公告)号: | CN102915361A | 公开(公告)日: | 2013-02-06 |
发明(设计)人: | 袁武;林子涵;袁文 | 申请(专利权)人: | 北京理工大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100081 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种基于文字分布特征的网页正文提取方法,包括以下步骤:步骤1:将网页HTML代码解析为对应的标签树;步骤2:分析网页文字分布特征,分别计算容器节点和文本节点节点权值;步骤3:后序遍历标签树,取“自身权值”最大的节点,提取其中的文字作为正文。本发明不需要人工干预,直接从单个网页中提取正文,不需要网页集合以进行学习;对标签依赖较少,能够从包含多个正文部分的网页中提取所有正文,在中英文测试集上都取得较高性能。 | ||
搜索关键词: | 一种 基于 文字 分布 特征 网页 正文 提取 方法 | ||
【主权项】:
1.一种基于文字分布特征的网页正文提取方法,包括以下步骤:步骤1:将网页HTML代码解析为对应的标签树,树中每个节点中保存节点的标签名称、节点编号、指向父节点的指针,每个容器节点还保存指向其所有子节点的指针的集合,每个文本节点中则包括该节点对应的文字,具体方法为:一、预处理:扫描HTML代码,去掉<script></script>、<style></style>、<noscript></noscript>标签对以及这三个标签对之间的代码,去掉<!---->标签内的注释、去掉<!doctype>标签;二、扫描预处理之后的HTML代码,从中提取标签的层次结构,建立网页HTML代码对应的标签树:扫描过程中,维护一个由节点组成的线性列表:每遇到一个开始标签,对其建立一个节点,节点名称设定为标签名称,并分配节点的编号,编号从1开始分配,每新建一个节点,编号增一作为该节点编号,扫描标签属性,记录其是否可见,若某一节点存在type属性且其值为hidden或存在style属性且其值为display:none或visibility:none则该节点不可见,将新建节点加入线性列表末尾;当遇到一个结束标签时,从线性列表尾部向前扫描寻找第一个与该结束标签同名的节点,将该节点以后的所有节点添加到该节点的子节点集合中,此时,若某节点不可见,则直接将其从列表中删除;对于标签之间的文本,当扫描到一个开始标签或结束标签时,对该标签与前一标签之间的文本建立一个文本节点,分配编号并添加到节点列表中;三、后处理:后序遍历标签树,将子节点中不包含文本节点的节点从树中移除。步骤2:计算节点权值:一、按照以下公式(1)计算容器节点i的权值:
在式(1)中,节点i的权值由两部分组成:第一部分为该节点的“自身权值”,取决于该节点的子节点中文字的分布情况,数值上等于该节点所有子节点权值的和;第二部分为该节点的“附加权值”,表示所有兄弟节点对该节点权值的影响;在式(1)第一部分中,C为节点i的直接子节点集合;在第二部分中,N为节点i的兄弟节点集合,W(n)'为节点n的自身权值,ID(i)为节点i在标签树中的编号,某一节点权值对其它节点权值的影响按照高斯分布N(0,σ2)计算,在此条件下,距该节点越近的节点对其影响越大;为防止过度平滑,规定若节点“附加权值”的绝对值大于该节点“自身权值”的绝对值,“附加权值”符号不变但绝对值设置为该节点“自身权值”的绝对值;二、按照以下公式(2)计算文本节点j的权值:W ( j ) = Σ s ∈ S ( Σ l ∈ L 1 2 π σ 1 e - ( ID ( s ) - ID ( l ) ) 2 2 σ 1 2 W ( l ) + W ( s ) ) + α * Σ n ∈ N 1 2 π σ 2 e - ( ID ( j ) - ID ( n ) ) 2 2 σ 2 2 W ( n ) ′ - - - ( 2 ) ]]> 在式(2)中,文本节点j的权值由两部分组成:第一部分为该节点的“自身权值”,取决于该节点包含的文字的分布,第二部分为该节点的“附加权值”,表示所有兄弟节点对该节点权值的影响;在式(2)第一部分中,S表示节点j内包含的句子的集合,L表示某个句子s相邻的句子集合,即S中除s以外的句子集合,W(s)和W(l)表示每个句子自身的权值,该权值绝对值等于句子内包含的文字的个数,ID表示句子在段落中的序号,段落某一句子权值对其它句子权值的影响按照高斯分布N(0,σ12)计算;在第二部分中,N为节点j的兄弟节点集合,W(n)'为节点n的自身权值,ID(j)为节点j在标签树中的编号,某一节点权值对其它节点权值的影响按照高斯分布N(0,σ22)计算;将每个文本节点中的文字段落划分成句子,每个句子长度为句子内中文字符个数、英文单词个数、数字个数之和,为区别不同文字在计算权值时的不同作用,对于链接文字,句子的自身权值等于句子长度,对于链接文字和用户交互节点内的文字,句子的自身权值等于句子长度的相反数;在式(1)和式(2)中,对于非链接文字以及权值为正的节点,σ(σ1、σ2)取经验值1;对于链接文字、用户交互节点内的文字以及权值为负的节点,σ(σ1、σ2)取经验值0.5;α为比例因子,取经验值10;节点权值的取值范围为实数域R,按照定义,权值越大,节点包含的文字成为正文的可能性越大;权值越小,节点包含噪声文字的可能性越大;三、后序遍历标签树,对每个节点按照上述模型与公式计算权值,并记录自身权值最大的节点;步骤3:后序遍历标签树,取“自身权值”最大的节点,提取其中的文字作为正文。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201210397240.0/,转载请声明来源钻瓜专利网。