一种基于dom的网页关键内容抽取方法

文档序号:8258806阅读:255来源:国知局
一种基于dom的网页关键内容抽取方法
【技术领域】
[0001]本发明属于互联网技术领域,特别涉及一种基于DOM(Document Object Model,文档对象模型,是一种用于表示和处理网页内容的树形数据结构)的网页关键内容抽取方法。
【背景技术】
[0002]随着互联网技术的不断发展,网络信息中的关键内容和冗余内容都呈现出爆炸式的增长,为了充分利用网络信息的价值,就需要过滤冗余内容,将关键内容抽取出来。比如在网页中的文本信息资源中,除了文章标题、文章内容、用户评论等有价值的关键内容以夕卜,通常还包括了导航栏目、广告内容、站内链接等与关键内容无关的冗余信息,这些冗余信息会影响用户的阅读体验,并且在同一网站中的网页通常使用同样的网页模板,模板的冗余信息在网页中占明显比重,影响网页内容索引的质量,使用户难以检索到有价值的关键内容。因此,如何从来自同一网站的相关网页中快速、有效地过滤冗余信息抽取核心的关键内容,成了一个亟待解决的难题。
[0003]针对如何快速、有效地从同一网站的网页中去除冗余信息,找到核心的关键内容,以下论文和专利提供了不同的技术方案:
[0004]文献1.潘超,梁宏伟,李立召.基于DOM的网页信息抽取方法[J].硅谷,N0.20,2010:172 ;
[0005]文献2.—种网页信息抽取的方法和系统(201110161113.6);
[0006]文献I提出一种基于DOM的网页信息抽取方法。首先得到用户的需求,然后从DOM树的根节点开始递归遍历DOM树。在遍历DOM树的过程中,从根节点开始判断它的每一个子节点是否包含用户感兴趣的内容。如果节点中包含用户感兴趣的内容,就保留这个节点;否则,就删除这个节点。按照这种方法递归处理每一个节点,从而删除所有不包含用户感兴趣的内容的节点,这样,DOM树中只剩下了用户感兴趣的内容的节点。最后,再将得到的DOM树转换成网页。
[0007]文献2分析样本页面的DOM结构,获取抽取内容在DOM结构中的位置;将抽取内容在样本页面中的位置对应的节点作为目标节点,从目标节点出发,递归寻找所有节点直至找到根节点,形成候选路径,将从目标节点到根节点的路径作为路径集合;分析待抽取页面DOM结构,利用路径集合中的路径从根节点出发,定位待抽取页面的内容,获取待抽取页面内容对应的节点作为候选抽取节点集合;从候选抽取节点集合中选出鲁棒性最高的节点作为最终的抽取节点,利用抽取节点获取抽取内容。
[0008]以上文献所述方法主要存在以下问题:
[0009]文献I要求首先得到用户的需求,不适合在用户需求未知的情况下抽取网页的关键内容;在关键内容抽取过程中,删除了所有与用户需求无关的节点,导致提取内容零散,不便于用户阅读。文献2需要事先得到抽取的内容目标,不适合在未知抽取内容的情况下使用,并且抽取内容的单位仅限于节点,而非子树,导致抽取到的有效信息量较少。

【发明内容】

[0010]本发明目的在于提出一种基于DOM的网页关键内容抽取方法,以解决【背景技术】中的方法不适合抽取未知内容、并且抽取内容零散的问题,为处理同一网站中的网页关键内容抽取提供支持。
[0011]为达到上述目的,本发明是采取如下的技术方案予以实现:
[0012]一种基于DOM的网页关键内容抽取方法,包括以下步骤:
[0013]I)根据来自同一网站的模式相同的网页URLjP URL2,下载网页的HTML文本内容,分别保存为HTMLjP HTML 2,然后采用DOM解析技术将HTMLjP HTML 2分别转化为DOM结构,记为 TREEjP TREE 2;
[0014]2)定义用于识别关键内容的差异度,设计关键内容路径列表Lk?以及约简关键内容路径列表Ly,Lk?和Ly的列表元素均为关键内容所在节点node的节点路
4工 Pnode?
[0015]3)基于步骤2)中的差异度定义,设计差异度计算方法,计算TREE1中各节点相对于TREEd^差异度,将差异度大于给定差异度阈值e的节点的节点路径加入步骤2)设计的关键内容路径列表Lk?;
[0016]4)设计算法对步骤3)得到的关键内容路径列表Lk?进行约简,得到步骤2)设计的约简关键内容路径列表Ly;
[0017]5)基于步骤4)得到的约简关键内容路径列表Ly,获取网页的关键内容,并将其返回给用户。
[0018]本发明进一步的改进在于,步骤I)中所述的DOM结构中,每个节点node包括以下3种属性:
[0019]1-1)节点类型TMde:T mde包括Text类型和Element类型,其中Text类型的节点是DOM的叶节点;Element类型的节点是DOM的分支节点;
[0020]1-2)节点内容Cnmte:Cn(Kte是节点包含的内容,Text类型节点的内容为该节点的文本,Element类型节点的内容为HTML标签文本;
[0021]1-3)节点路径Pmde:节点node的节点路径P Mde是从DOM的根节点到节点node的节点序列。
[0022]本发明进一步的改进在于,步骤2)中所述的差异度定义为TREE1的节点N 1与TREE2在位置P ^对应节点N 2的不相似程度,记为diff (N 1; TREE2),其取值规则如下:
[0023]在TREE 2中查找与N i所述节点路径P N1和节点内容C N1均相同的节点N2,如果N2不存在,则 diff (N1, TREE 2) = 1,否则:
[0024]2-1)如果 Tni等于 Text,即 N ^Text 类型节点,则 diff (N 丨,TREE2) = O ;
[0025]2-2)如果Tni等于Element,即N丨为Element类型节点,则N丨的差异度为N丨所有子节点差异度平均值,diff (N1, TREE2) = Σ idiff (Subnodei, TREE2)/n,其中η为N1的子节点数,subnode# N丨的第i个子节点。
[0026]本发明进一步的改进在于,步骤3)中所述的差异度计算方法以及关键内容路径选取方法如下:
[0027]采用先根遍历的方法对TREE1中的节点进行遍历,对于遍历到的节点node,计算该节点的差异度diff (node,TREE2):
[0028]3-1)判断diff (node, TREE2)是否大于差异度阈值e:
[0029]a、如果diff (node, TREE2)大于e,则认为node包含的内容为关键内容,将PmdeW入Lkeyemtent,执行下一步;
[0030]b、如果diff (node, TREE2)小于等于e,则执行步骤3_3);
[0031]3-2)判断 diff (node, TREE2)是否等于 I:
[0032]a、如果 diff (node, TREE2)不等于 1,执行步骤 3-3);
[0033]b、如果diff (node, TREE2)等于1,则再判断!^。如是否等于Element,如果等于,贝丨J该node的所有子节点不再计算差异度,执行步骤3-3);
[0034]3-3)按照先根遍历次序对其余未计算差异度的节点进行遍历。
[0035]本发明进一步的改进在于,步骤4)中差异度阈值e的取值范围为0〈e〈l。
[0036]本发明进一步的改进在于,步骤4)中差异度阈值e的取值为0.7。
[0037]本发明进一步的改进在于,步骤4)中所述的对关键内容路径列表Lkeyrantmt进行约简得到Ly的算法过程如下:
[0038]4-1)提取Lk?中所有的关键内容路径,组成关键内容路径集合SET ;
[0039]4-2)从SET中任取关键内容路径Path,并将SET中剩余关键内容路径组成的集合记为SET’ ;
[0040]4-3)从SET’中任取关键内容路径Path’,按照字符串匹配算法将Path与Path’进行匹配,如果Path是Path’的子串,则从SET及SET’中删除Path’,并且从Lkeycontent中删除Path’,进入下一步;如果Path’是Path的子串,贝I^SET中删除Path,并且从Lkeyemtent中删除Path,进入步骤4-5);否则,进入下一步;
[0041]4-4)如果SET’中还有未处理过的关键内容路径,则进入步骤4-3);否则,如果SET’中的关键内容路径数量大于1,则从SET中删除Path,进入步骤4_2),否则进入步骤4-6);
[0042]4-5)如果SET中的关键内容路径数量大于1,则进入步骤4_2);否则,进入下一步;
[0043]4-6)最终的关键内容路径列表Lkeyrantent即为所述约简关键内容路径列表L reduceo
[0044]本发明进一步的改进在于,步骤5)中所述的基于约简关键内容路径列表Ly将网页中的关键内容返回给用户的方式,包括以下步骤:
[0045]对于Lreduce中的每个关键内容路径:
[0046]5-1)在TREE1中找到以该路径末端节点为根节点的DOM子树;
[0047]5-2)将所述DOM子树转换成网页;
[0048]5-3)将所述网页返回给用户。
[0049]与现有技术相比,本发明方法的优点是:
[0050]1、本发明能够在关键内容的位置及具体内容均未知的情况下对其进行抽取。
[0051 ] 2、在关键内容抽取过程中,保留了原DOM树中节点之间的相互关系,没有进行节点删除操作,从而抽取到的信息具有很好的完整性,非常贴近原始信息,便于用户阅读。
[0052]3、抽取单位为子树,从而抽取到的关键内容信息量较大,抽取效率较高。
【附图说明】
[0053]图1是本发明方法的整体流程示意图;
[0054]图2是本发明设计的节点差异度定义方法的流程图;
[0055]图3是本发明设计的差异度计算及关键内容路径选取方法的流程图;
[0056]图4是本发明设计的关键内容路径列表约简算法的流程图。
【具体实施方式】
[0057]以下结合附图,对本发明一种基于DOM的网页关键内容抽取方法的具体内容做细致描述。
[0058]如图1所示,本发明一种基于DOM的网页关键内容抽取方法,包括下述步骤:
[0059]I)根据来自同一网站的模式相同的网页URLjP URL 2 (Uniform ResourceLocator,统一资源定位符,即网页地址,例如 URL^http://example, com/1, html,URL2:http://example.eom/2.html),下载网页的 HTML 文本内容(Hyper Text Mark-upLanguage,超文本标记语言),分别保存为HTMLjP HTML 2,然后采用DOM解析技术将HTMLjPHTMLAIlj转化为 DOM 结构,记为 TREE jP TREE 2;
[0060]2)定义用于识别关键内容的差异度,设计关键内容路径列表Lk?以及约简关键内容路径列表Ly,Lk?和Ly的列表元素均为关键内容所在节点node的节点路
4工 Pnode?
[0061]3)基于步骤2)中的差异度定义,设计差异度计算方法,计算TREE1中各节点相对于TREEd^差异度,将差异度大于给定差异度阈值e的节点的节点路径加入步骤2)设计的关键内容路径列表Lk-其中差异度阈值e的取值范围为0〈e〈l,默认取值为0.7,如果抽取内容中仍包含较多非关键内容,则增加e值,如果抽取内容较零碎或者包含信息较少,则减小e值;
[0062]4)设计算法对步骤3)得到的关键内容路径列表Lk?进行约简,得到步骤2)设计的约简关键内容路径列表Ly;
[0063]5)基于步骤4)得到的约简关键内容路径列表Lreduee,获取网页的关键内容,并将其返回给用户。
[0064]上述步骤I)中所述的DOM结构中,每个节点node包括以下3种属性:
[0065]1-1)节点类型TMd
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1