基于文本标签特征挖掘的网页正文提取方法与流程

文档序号:17825792发布日期:2019-06-05 22:38阅读:来源:国知局

技术特征:

1.基于文本标签特征挖掘的网页正文提取方法,其特征在于,包括以下步骤:

S1、进行网页标签预处理及Html标签修复;采用字符串处理的方式来进行网页标签的预处理工作,具体包括以下子步骤:

S11、字符串遍历开始位findIndex置为0,定义标签栈Stack,左标签Flag置为Flase;

S12、遍历查询是否已经获取标签信息,若是进行步骤S14,否则进行步骤S13;

S13、检查标签是否嵌套,若是则清空标签栈,删除左标签,结束预处理;否则判断左标签Flag是否为True,若左标签Flag为True则删除左标签信息并结束预处理,否则直接结束预处理;

S14、检测是否具有右标签,若是则进行步骤S16,否则进行步骤S15;

S15、检查标签是否嵌套,若是则将左标签信息压入标签栈,否则将左标签Flag置为True;

S16、检查标签是否嵌套,若是则进行步骤S161,否则进行S162:

S161、检查标签栈是否为空,若是则删除右标签信息并进行步骤S17,否则将左标签迁出标签栈并进行步骤S162;

S162、检查左右标签之间的内容是否已经删除,若是则进行步骤S163,否则进行步骤S164;

S163、检查左标签Flag是否为True,若是则删除左右标签间的全部内容,Flag置为False;否则删除右标签信息;

S164、删除左右标签信息,将Flag置为False;

S17、将findIndex设置为右标签的结束位置,返回步骤S12;

S2、Html标签特征选择及提取;

S3、标签特征聚类挖掘及正文簇选择;

S4、正文簇内标签经验性调整;

S5、正文簇标签文本提取。

2.根据权利要求1所述的基于文本标签特征挖掘的网页正文提取方法,其特征在于,所述左标签定义为Html标签的开始部分,右标签定义为Html标签的闭合部分。

3.根据权利要求1所述的基于文本标签特征挖掘的网页正文提取方法,其特征在于,所述步骤S1中的Html标签修复的规则为:由于标签具有嵌套的特点,在修复标签时运用数据栈进行标签存储,利用栈的特性完成标签对修复;针对转义字符的修复,通过字符串处理的方式进行字符反转义的,将其替换为相应的转义字符。

4.根据权利要求3所述的基于文本标签特征挖掘的网页正文提取方法,其特征在于,所述步骤S2的特征提取具体挖掘以下六个标签特征:标签ID、标签内容字符串长度、标签内容中标点符号数、左标签长度、右标签长度和标签层次;

文本标签特征提取包括以下子步骤:

S21、将字符串标签遍历开始位findIndex置0,标签内容查询开始位PostIndex置0,定义标签特征栈LableStack,左标签Flag置为Flase;

S22、遍历查询是否已经获取标签信息,若是则进行步骤S23,否则结束文本标签特征提取操作;

S23、查询是否具有右标签,若是则进行步骤S24,否则进行步骤S26;

S24、检查标签特征栈LableStack是否为空,若是则进行步骤S241,否则进行步骤S242;

S241、删除右标签之前的所有内容并将findIndex置0,然后返回步骤S22;

S242、检测标签特征栈LableStack栈顶标签名是否等于右标签名并且检测标签特征栈LableStack栈顶标签是否为左标签,若是则取标签时间的文本内容,然后进行步骤S243;否则将findIndex置为右标签结束位,然后返回步骤S22;

S243、检查文本内容是否为空或全字符,若文本内容为空或全字符则进行步骤S25,否则进行步骤S244;

S244、构建标签结构体对象,标签进行自修正处理,将PostIndex置为标签内容的结束位;

S245、检查标签是否具有自过滤机制,若是则进行步骤S25,否则进行步骤S246;

S246、将标签结构体对象加入标签信息队列,然后进行步骤S25;

S25、删除标签对之间的内容字符,将findIndex置为左标签开始位,将标签特征栈LableStack进行出栈操作,然后返回步骤S22;

S26、检查标签特征栈LableStack是否为空,若是则进行步骤S261,否则进行步骤S262;

S261、将左标签进行入栈操作并返回步骤S22;

S262、取标签特征栈LableStack顶标签和左标签之间的文本内容;

S263、检查文本内容是否为空或者全字符,若是则进行步骤S269,否则进行步骤S264;

S264、构建标签结构体对象,将PostIndex置为标签内容结束位;

S265、进行标签自补全处理和标签自修正处理;

S266、检查标签是否具有自过滤机制,若是则进行步骤S268,否则进行步骤S267;

S267、将标签结构体对象加入标签信息队列,然后进行步骤S268;

S268、删除标签特征栈LableStack栈顶标签TopLable与左标签之间的内容tmpContent,利用左标签起始位参数减去tmpContent长度值;

S269、将标签特征栈LableStack栈顶标签TopLable的LeafLabFlag参数置为Flase,将左标签进行入栈操作,并返回步骤S22。

5.根据权利要求4所述的基于文本标签特征挖掘的网页正文提取方法,其特征在于,所述步骤S3中标签特征聚类挖掘的具体实现方法为:将文本向量定为6维,分别为标签ID、标签文本长度、左标签长度、右标签长度、标签文本标点符号个数和标签层次数;遍历标签信息列表,将满足6维文本向量的标签添加到标签向量矩阵中,获得一个N行6列的特征向量矩阵,然后将各维数据做归一化处理。

6.根据权利要求5所述的基于文本标签特征挖掘的网页正文提取方法,其特征在于,所述步骤S3中的正文簇采用AGENS层次聚类算法生成;正文簇的选择采用以下策略:将各个聚类簇中文本长度和标点符号数之和作为判断依据,取各个聚类簇中文本长度和标点符号数之和最大的Top标签信息,经对比实验后将Top选定为5,再计算取出的Top标签的加权平均值,获取对应的加权向量,如果某个聚类簇中的标签特征向量数量小于Top个,则取该聚类簇的中心向量做为加权向量,最后取加权向量中文本平均长度与平均标点数之和最大的聚类簇作为正文簇。

7.根据权利要求6所述的基于文本标签特征挖掘的网页正文提取方法,其特征在于,所述步骤S4包括以下子步骤:

S41、获取正文标签名、标签层次数和确定为正文标签的标签ID,把确定为正文标签的标签ID作为中心扩展标签ID组;

S42、遍历查询中心扩展标签ID组是否完成扩展,若是则进行步骤S45,否则进行步骤S43;

S43、分别以标签ID为中心向前后扩展正文标签范围,形成待测标签子中心块;

S44、对S43得到的待测标签子中心块进行合并以及选择:将ID连续的待测标签子中心块合并为一个待测标签子中心块;判断合并后的待测标签子中心块是否为确定为正文标签的正文标签子中心块,若是则对该待测标签子中心块进行合并,否则删除该待测标签子中心块;然后返回步骤S42;

S45、组合所有正文子中心,并返回新的正文簇标签ID,结束调整。

8.根据权利要求7所述的基于文本标签特征挖掘的网页正文提取方法,其特征在于,所述步骤S44对于是待测标签子中心块是否为确定为正文标签的正文标签子中心块的判定方法为:

(1)针对合并后只有一个待测标签子中心块的情况,若待测标签子中心块内标签ID数量小于4个且标签ID分布在全标签信息ID的尾部,此时求取待测标签子中心块中标签文本的平均长度,如果标签文本平均长度小于预设值且网页的总标签数大于预设值时,判定该待测标签子中心块为非正文标签子中心块,将该子中心块删除;

(2)针对合并后存在多个待测标签子中心块的情况,判定并清理单标签ID的子中心块:遍历所有子中心块,若某子中心块只有一个标签ID,且这个标签ID与其前后的标签ID不具有连续性,则将此待测标签子中心块判定为非正文标签子中心块,删除该待测标签子中心块。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1