一种基于区块树的Web页面链接块的识别方法

文档序号:6545599阅读:213来源:国知局
一种基于区块树的Web页面链接块的识别方法
【专利摘要】本发明提出一种基于区块树的Web页面链接块的识别方法,并基于此提出链接块判别和评价指标,同时结合区块树提出正向链接块判别和逆向链接块判别两种基本的区块遍历和判别算法;正向判别法识别速度快,链接块粒度大,可用于对索引类型Web页面的分析及文本抽取应用中;逆向判别法能轻松灵活的控制链接块的粒度大小和数量规模,保障链接块的精细化和完整性,从而最终实现链接块对页面链接覆盖的全面性,该方法既可用于对链接块要求粒度细腻的场合,也可用于页面去噪、文本提取、页面抽取模板自动生成等场合;本发明所提出的区块树作为Web页面分析处理的基础,结合所提出两种遍历和判别法,可以广泛应用于Web数据预处理及数据挖掘等领域。
【专利说明】—种基于区块树的Web页面链接块的识别方法
【技术领域】
[0001]本发明涉及Web页面重要性计算、Web页面去噪、主题相关链接块提取、web正文识别、Web页面正文抽取、细化搜索引擎处理单元粒度、海量Web数据预处理领域,具体的为一种基于区块树的Web页面链接块的识别方法。
【背景技术】
[0002]万维网是依赖链接所构建起来的一个庞大网络,链接是万维网的灵魂。万维网中的每一个网页,正是通过Web页面之间的链接最终构成了当今世界最为复杂的网络,网络爬虫也正是依靠Web页面之间的链接最终实现网络数据的爬取,Web页面的重要性也往往是通过链接分析而获得。Web页面中的链接数目往往在数十到几千之间,特别是在索引(目录)类型网页中,链接更是占据了近100%的比例。页面中的链接虽多,但在实际的应用中,网页中的链接却并不乱,网页设计者会根据链接的类型将其进行适当的分类并呈现为链接区块,例如广告链接块、顶部导航链接块、侧栏导航链接块、版权联系链接块、主题相关链接块等。链接的分块呈现体现了网页信息组织的结构性和逻辑性,并增强了网站用户的用户体验。Web页面链接块的准确识别,在Web页面重要性计算、Web页面去噪、主题相关链接块提取、web正文识别、Web页面正文抽取、细化搜索引擎处理单元粒度、提高网络爬虫爬取效率等海量Web数据预处理中有着极其重要的作用。
[0003]陈竹敏[I]对Web页面链接的研究按粒度将其分为四个粒度:站点(网站)粒度、页面(网页)粒度、网页块级(Page Block)粒度、链接粒度。站点粒度的链接研究主要包括网站影响力或重要性评价[2];页面粒度的典型研究如网页重要性研究,有代表性的算法为PageRank、HITS ;块级粒度相关研究主要有辅助页面信息抽取、页面类型判断、页面重新排版布局[3]及主题爬行中的候选链接优先级计算[4],[5]等,此外也有研究人员提出基于块级粒度的PageRank等算法[6],Lin[7]将页面进行分块,将页面之间的链接转化为块之间的链接,并利用HITS算法计算各块的重要性;链接粒度的典型相关研究如主题爬虫中的候选链接优选,以防止爬取主题偏离并提高爬取效率。实际上,四个粒度往往并不是完全隔离,如熊忠阳[4]和黄仁[5]等采用网页分块以提高主题爬行效率。在上述四个粒度中,站点粒度过于粗糙,链接粒度则太过细致,页面粒度由于页面广告链接等各种非主题链接的日益多样化而变得极易受干扰,影响分析效果,这就决定了对块级粒度的链接研究具有特殊的意义。陈军[8]通过引入网页分块对Shark-Search算法进行改进,实验表明改进后的基于网页分块的算法比传统算法提升明显。
[0004]对链接块进行研究的一个重要前置内容即Web页面分块,对Web页面进行分块或抽取的方法众多,且划分标准并不统一。相关研究人员将Web页面的抽取方法总结为基于Wrapper、模板、机器学习、视觉布局特征、HTML特征等五类[9]。此外,Caponetti提出利用模糊神经网络实现页面分块的方法[10],Pasternack[ll]提出MSS页面分割方法,经试验得到比VIPS[12]算法更好的结果。这些方法皆根据具体应用需求进行选择,且实际应用中一般都会综合使用多种方法,如Fan[3]先利用DOM进行分析得到所需节点,然后使用视觉特征进行优化所需文本;PETERS[13]先利用DOM对页面进行分块,然后使用机器学习的方法进行内容抽取;Mehta[14]同时利用视觉特征和内容信息对页面进行分割。虽然综合使用一般可以取得更好的效果,但是同时采用的方法越多,程序复杂性也将越高,并且面对海量而又复杂多样化的Web页面时程序健壮性更加脆弱。Web页面块的重要性研究也引起部分研究者的关注与重视,Song[15]基于页面布局和内容信息对页面块重要性进行了研究,Fersini [16]研究了页面Image块的重要性并基于此进行页面分类研究。
[0005]经过对早期文献中相关方法的分析总结可知,目前对Web页面链接块进行发现识别的最主要方法是基于标签树[4], [5], [17], [18], [19], [20], [21], [30],且标签树往往是基于D0M[22]构建的;其他各种方法往往是以HTML标签树或DOM为基础[23],[24],例如知名网页分块算法VIPS即是如此。但上述这些方法并非专为页面块级元素提取而设计,部分方法实现过于复杂,部分方法解析计算消耗过大,有些方法则效果欠理想。
[0006]对Web链接块的判别方法较为单一,主要考虑的指标即块中所包含的链接文本长度和所有文本长度的比值[5],[25], [26],或者块中非链接文本长度与文本长度的比值[27],通过比值与预先设定阈值的大小关系判断是否为链接块。其核心思想为:设某个待判定块中链接文本长度为Llink,所有文字长度为Ltrtal,阈值为t(0 ( t ( I),则可用如下表达式来进行判断:
[0007]m = <O < m < I)
[0008]当m> = t时,则表明该块可能为链接块,否则可能为文本块。m值越大,表明为链接块的可能性越大。
[0009]上述判断思路存在以下五个突出问题:
[0010]一是仅考虑链接文本与所有文本的长度比值而忽略了块中文本的绝对长度,因为一部分网页中的主体文本块中存在相当篇幅的链接,这种情况尤其在部分链接资源分享类型网页中尤其普遍。
[0011]二是忽略了非链接文本的部分特性,如日期、数字、未加链接的信息来源标注文字、一些特殊符号等。而在很多的链接块中,链接前面或者后面都存在着大量的其他非链接内容如日期,这种现象对链接块的准确判别造成了极大的干扰。
[0012]三是该判别方法在全部文本长度不足够长时,对链接文本的长度极其敏感,即某个阈值在某些使用短链接文本的页面工作良好,但遇到使用长链接文本的页面时极有可能误判。不同网站或不同网页的链接文本长度差别较大是极其常见的现象,这给链接块的准确判断带来极大的不确定性,倘若链接文字变得更短,则很可能将该链接块误判为非链接块。
[0013]第四是由于分块问题导致的错误会影响链接块的准确判别,尤其容易把正文主体和链接块之间没有块级元素分隔而是处于同一块级元素节点的文本块判别为链接块,或者将链接块误判为主体文本中的非噪音链接。
[0014]第五是忽略了链接数。
[0015]针对上述方法的不足,曹冬林[28]依据链接文本与文本比值和文本量提出有效信息率Iv和有效信息总量It的概念,并基于此进行块类型判断。其核心思想表达为如下表达式:[0016]
【权利要求】
1.一种基于区块树的Web页面链接块的识别方法,其特征在于,包括下述步骤: 步骤1、输入网页集合; 步骤2、对html网页文档进行预处理,包括去除脚本代码,并对HTML文档标签进行自动标签补全; 步骤3、用区块树的构建方法对HTML代码构建区块树; 步骤4、利用四个判别条件对区块树判断链接块; 定义如下概念: 链接文本:也称锚文本,即在Web页面的HTML代码中处于<a>和</a>之间的文本,不包含其间的非文本内容; 普通文本:也简称纯文本,即在HTML代码中,处于HTML标签区域之外、而又不在<a>和</a>之间的所有文本; 计算文本长度遵从如下规则: ①英文等字符以单词为统计单位,即一个单词长度计为I,如果若干个连续英文字符不构成单词,其长度也将计I; ②中文等字符以单个字为统计单位,即一个汉字长度计为I; ③数字以一个完整数字为统计单位,即一个完整数字长度计为I; ④日期时间字符串以日期时间整体为统计单位,即一个完整日期时间串长度计为I; ⑤标点符号与汉字统计规则一样,但是若相邻的若干个标点符号相同,则长度只计I; 链接块的描述和判别规则如下: 设区块树为P层,区块树中的区块数量为n,则各层区块数分别记为η” n2,…,np,所以,区块元素记为Block: (m = l,2,-'%p;i= 1,2,..%?,, j其中m表示该区块元素在区块树中的





J层级,i表示该区块元素属于第m层的序号,则《 = Σ?,.I = /.* 设区块Bbckin中链接数为CLinkl t普通文本的长度为链接文本长度为LLifK ,若该区块同时满足如下条件,则该区块称为链接区块,简称链接块;
2.根据权利要求1所述的一种基于区块树的Web页面链接块的识别方法,其特征在于:所述的步骤I中还包括如下步骤: 步骤1.1、编码识别:先获取网页编码格式UTF-8、GB2312 ; 步骤1.2、网页读取:通过对待识别的WEB网页的HTML文档进行字符扫描,分别识别出起始位置和结束位置; 定义如下概念: <a href = 〃…〃> 文字 </a> 所述的起始位置是以字符“〈”开始,以字符“〉”为结束,且这两者之间并不存在字符“〈”和的字符串.所述的结束位置是以字符“〈/”开始,以字符“〉”为结束,且这两者之间并不存在字符“〈”、“〉”和“/”的字符串。
3.根据权利要求1所述的一种基于区块树的Web页面链接块的识别方法,其特征在于:所述的步骤3中,区块树的构建包括如下步骤: 定义如下概念: 标签块:也称 节点,即一个HTML标签所包含的所有内容; 区块:简称块,在HTML代码中,为通过block级标签或者等同作用的标签所界定的区域;区块树:一种以区块为构成单位,将Web页以类似标签树形式进行表达的树形结构,即在区块树中,其叶子节点都是区块元素,而不会将其继续细分为其他inline级元素; 步骤3.1、标签树中每个分支的非block级的叶子节点,将其逐个去除或者予以标记; 步骤3.2、在步骤3.1的基础上,经过一轮修剪后,将会出现新一轮的叶子节点; 步骤3.3、在步骤3.2的基础上,继续对这些叶子节点进行去除或者标记; 步骤3.4、重复步骤3.2和步骤3.3,上述过程持续进行,直至该标签树的所有叶子节点都是区块元素为止,最终仅剩下标注为Block的节点,即可完成区块树的构建。
4.根据权利要求1所述的一种基于区块树的Web页面链接块的识别方法,其特征在于:所述的步骤4中,采用正向判别方法判断链接块,其判断准则为: ①从父节点往子节点方向、从上往下进行判断; ②若某个节点被判别为链接块,则其子节点及更深层次的节点都不再判断,但其兄弟节点仍需继续判断。
5.根据权利要求1所述的一种基于区块树的Web页面链接块的识别方法,其特征在于:所述的步骤4中,采用逆向判别方法判断链接块,其判断准则为: ①从子节点往父节点方向、从下往上进行判断; ②当某个节点被判别为链接块,若当前区块链接数不超过阈值Tfflark时,则仅标记当前节点为链接块;否则除了标记当前区块为链接块,还需要标记其所有直系父辈节点为“无需判别”状态,但旁系父辈节点仍需继续判断,兄弟节点也需继续判断; ③当某区块被判别为链接块时,将其所有子区块都标记为“无需判别”。
【文档编号】G06F17/30GK103927397SQ201410185937
【公开日】2014年7月16日 申请日期:2014年5月5日 优先权日:2014年5月5日
【发明者】谷琼, 王贤明, 朱莉 申请人:湖北文理学院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1