一种基于内容相似的网页分割方法转让专利

申请号 : CN201310669395.X

文献号 : CN103631944B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 童名文彭红超郝秋红牛琳栗欢杨蕾张小娟

申请人 : 华中师范大学

摘要 :

本发明公开了一种基于内容相似的网页分割方法,首先采用内容块检测算法检测出网页中所有的内容块。然后依据人类视觉特征得出六维度内容视觉向量空间,并定义内容视觉空间里两点相似度计算公式。接着将内容块看作顶点,相似度看作顶点间边的权值,网页构造为一张加权无向连通图。依据移动终端软硬件配置,采用Kruskal算法对加权无向连通图进行分割,分割后的每张子图适合移动终端处理和显示。最后关联所有子图,建立子图关系,并选取第一个子图作为首页推送给用户,用户可以根据子图关系实现网页遍历。本发明可以用于移动终端访问Web网页的解决方案中,有效解决网页在移动终端的显示质量差,甚至无法显示的问题,从而提高用户服务体验。

权利要求 :

1.一种基于内容相似的网页分割方法,其特征在于,包括以下步骤:步骤1:自动获取移动终端软硬件配置信息并存储;

步骤2:依据用户请求获取Web服务器中的Web网页;

步骤3:对步骤2得到的Web页面,进行HTML规范处理与CSS预处理,实现HTML规范化和样式信息与数据的绑定;

步骤4:根据内容块检测算法获取经步骤3处理后的Web网页中所有内容块;

步骤5:对于步骤4得到的内容块,依据人类视觉特征得出六维度内容视觉向量空间,并定义内容视觉空间里两点相似度计算公式;

其中所述六维度内容视觉向量空间为cv=(内容块相关度,内容类型,空白,背景色,字体信息,边框信息);

内容视觉空间里两点相似度计算公式定义为:

其中Sk(i,j)表示内容视觉空间里i,j两点第k维度的相似度;ωk表示维度权重;

对于六个维度,计算公式如下:

①内容块相关度:

li、lj是表示内容块i,j的位置;m表示DOM树的深度;

②内容类型:四种内容类型为图片、文本、链接、控件,分别用1、10、100、1000表示ti,tj分别表示内容块i,j的内容类型, 表示ti,tj的汉明距离;len(ti)表示ti值长度;

③空白:

k为0、1、2、3,分别表示上间距、右间距、下间距、左间距;

④背景色:内容块Bi、Bj的RGB分别为Bi(a1,b2,c3),Bj(a1,b2,c3)⑤字体信息:考虑大小、颜色、字型、粗细四个方面,字体信息f=(大小值,颜色值,字型,粗细值)fi,fj分别表示内容块i,j的字体信息, 表示fi,fj的汉明距离,即四个方面字体信息相同的数量;

⑥边框信息:考虑上右下左四个边,边框信息b=(上边框值,下边框值,左边框值,右边框值)bi,bj分别表示内容块i,j的边框信息, 表示bi,bj的汉明距离,即四个边框值相同的数量;

步骤6:构建加权无向连通图,依据移动终端软硬件配置信息,采用Kruskal算法对加权无向连通图进行分割,得到所述的加权无向连通图的子图;

步骤7:关联所有子图,建立子图关系,选取第一个子图作为主页面推送给用户。

2.根据权利要求1所述的基于内容相似的网页分割方法,其特征在于:步骤1中所述的终端软硬件配置信息包括移动终端品牌,移动终端型号,移动终端系统类型及版本,移动终端分辨率,移动终端浏览器类型、版本、内核信息,并设定所述的移动终端品牌、移动终端型号、移动终端系统类型及版本移动终端浏览器类型、版本、内核信息为主键。

3.根据权利要求1所述的基于内容相似的网页分割方法,其特征在于:步骤3所述的对步骤2得到的Web页面进行HTML规范化,其具体采用HTMLClear Jar包实现。

4.根据权利要求1所述的基于内容相似的网页分割方法,其特征在于:步骤3所述的对步骤2得到的Web页面进行CSS预处理,其具体实现包括以下子步骤:步骤3.1:获取所述的Web页面的进行HTML规范化后的样式信息;

步骤3.2:关联样式信息和标签;

步骤3.3:输出HTML和PerfectNode关联类列表。

5.根据权利要求4所述的基于内容相似的网页分割方法,其特征在于:步骤3.2所述的关联样式信息和标签,其具体实现包括以下子步骤:步骤3.2.1:查找所述的关联样式信息的对应标签;

步骤3.2.2:定义“样式信息—标签”关联类;

步骤3.2.3:样式冲突检测与处理。

6.根据权利要求1所述的基于内容相似的网页分割方法,其特征在于:步骤6所述的构建加权无向连通图方法如下:将内容块看作顶点,内容块间的相似度看作顶点间边的权值。

7.根据权利要求1所述的基于内容相似的网页分割方法,其特征在于:步骤6所述的Kruskal算法,其具体实现包括以下子步骤:步骤6.1:读取步骤1获取的移动终端主键和移动终端分辨率信息;

步骤6.2:依据移动终端分辨率确定阈值分割模型,即确定子图最大像素面积St;

步骤6.3:将加权无向连通图的n个顶点看成n个孤立的连通分支,将所有边按权值从大到小排序;

步骤6.4:判断各个连通分支的面积Sn:

如果Sn>=St,则将连通分支从原图中分割出去,形成子图,将该连通分支与其他连通分支权值最大的边存储于关连池cr中;

如果Sn

步骤6.5:对于剩余的图,重复步骤6.4,直到剩余的图为空图。

8.根据权利要求1所述的基于内容相似的网页分割方法,其特征在于:用于实现所述的基于内容相似的网页分割方法的系统部署于代理服务器中,所述代理服务器能够获取用户请求与移动终端配置信息、获取Web服务器响应信息、获取处理后的响应信息,能够模拟移动终端用户发送请求、发送响应信息与移动终端配置信息给处理器、发送处理后的响应信息到用户。

说明书 :

一种基于内容相似的网页分割方法

技术领域

[0001] 本发明属于自适应web呈现与web信息提取技术领域,具体来讲,涉及一种基于内容相似的网页分割方法。

背景技术

[0002] 自适应web呈现技术是自适应技术的一个应用领域,它描述了一类新“智能组件/智能结构”,这些智能组件在工作条件改变的时候具有一个主动适应和目标优化调节的机械特性。这种主动的组件满足了改善系统机械特性、效率、性能及其他特性的要求。
[0003] Web信息抽取技术是从Web网页所包含的无结构、半结构或者结构化的信息中识别用户感兴趣的数据,并将其转化为结构和语义更为清晰的格式(XML、关系数据等),是信息提取的一个应用领域。
[0004] 早在20世纪90年代,人们便开始研究自适应web呈现与web信息提取技术,解决如何将针对PC端设计的网页在移动终端正常问题。30年历程,出现了各种解决方案。解决方法主要有三种:重构网页、转码、网页分割。重构网页即建立一个与PC网页对等的适合不同移动终端显示的移动网页,Web服务器判断是移动终端用户,则选择重构网页作为响应信息,该方法需要消耗大量的人力、物力、财力。转码即采用转码技术将HTML、JSP、ASP、PHP等不适合移动终端显示的代码转换成对等的WML(适合移动终端显示)的代码,由于一个网页含有大量的信息,如果将网页内容全部显示在小屏幕的移动终端中,需要花费大量时间滑动滚动条寻找需要的信息,用户体验极差;网页分割即将网页分割成语义完整的语义块,用户每次看到的仅仅是一个语义块形成的子页,该方法是目前热点研究话题,可分为以下几类:基于标签的网页分割方法、基于DOM的网页分割方法、基于位置关系的网页分割方法、基于模板的网页分割方法、基于视觉的网页分割方法。针对Web网页特点及用途的不同,每类分割方法具有多种不同的具体实现方法,这些具体实现方法一般只针对具有某种特征的网站,使用范围有限。比较先进的VIPS方法因“内容与样式分离”思想的普及应用以及大量网页的不规范,变得力不从心。随着移动终端的迅速发展与3G技术的普及,该矛盾日益突出和尖锐。
[0005] 采用上述三种方法生成的智能组件有三种部署方案:客户端部署、服务器端部署、代理服务器端部署。客户端部署即在客户端以插件的形式实现,但必须考虑移动终端软硬件性能的有限性以不同设备的兼容性问题。服务器端部署即将组件安装在服务器端,主要有联机部署(使用反向代理)和脱机部署(制成插件安装到网页制作工具中)两种,该部署方法会增加服务器负担,且这种负担会成倍的增加;代理服务器端部署即在服务器端与客服端之间建立一个类似服务器的设备,智能组件安装在该设备中获取与响应用户请求。

发明内容

[0006] 为了解决上述的技术问题,本发明基于内容相似,从人类视觉角度提出一种解决移动终端浏览器准确、高效显示Web网页问题的网页分割方法,该方法采用代理服务器部署,既避免不同客户端兼容问题,又不会增加Web服务器的负担。
[0007] 本发明所采用的技术方案是:一种基于内容相似的网页分割方法,其特征在于,包括以下步骤:
[0008] 步骤1:自动获取移动终端软硬件配置信息并存储;
[0009] 步骤2:依据用户请求获取Web服务器中的Web网页;
[0010] 步骤3:对步骤2得到的Web页面,进行HTML规范处理与CSS预处理,实现HTML规范化和样式信息与数据的绑定;
[0011] 步骤4:根据内容块检测算法获取经步骤3处理后的Web网页中所有内容块;
[0012] 步骤5:对于步骤4得到的内容块,依据人类视觉特征得出六维度内容视觉向量空间,并定义内容视觉空间里两点相似度计算公式;
[0013] 步骤6:构建加权无向连通图,依据移动终端软硬件配置信息,采用Kruskal算法对加权无向连通图进行分割,得到所述的加权无向连通图的子图;
[0014] 步骤7:关联所有子图,建立子图关系,选取第一个子图作为主页面推送给用户。
[0015] 作为优选,步骤1中所述的终端软硬件配置信息包括移动终端品牌,移动终端型号,移动终端系统类型及版本,移动终端分辨率,移动终端浏览器类型、版本、内核信息,并设定所述的移动终端品牌、移动终端型号、移动终端系统类型及版本移动终端浏览器类型、版本、内核信息为主键。
[0016] 作为优选,步骤3所述的对步骤2得到的Web页面进行HTML规范化,其具体采用HTMLClear Jar包实现。
[0017] 作为优选,步骤3所述的对步骤2得到的Web页面进行CSS预处理,其具体实现包括以下子步骤:
[0018] 步骤3.1:获取所述的Web页面的进行HTML规范化后的样式信息;
[0019] 步骤3.2:关联样式信息和标签;
[0020] 步骤3.3:输出HTML和PerfectNode关联类列表。
[0021] 作为优选,步骤3.2所述的关联样式信息和标签,其具体实现包括以下子步骤:
[0022] 步骤3.2.1:查找所述的关联样式信息的对应标签;
[0023] 步骤3.2.2:定义“样式信息—标签”关联类;
[0024] 步骤3.2.3:样式冲突检测与处理。
[0025] 作为优选,步骤5中所述的六维度内容视觉向量空间为cv=(内容块相关度,内容类型,空白,背景色,字体信息,边框信息)。
[0026] 作为优选,步骤5所述的内容视觉空间里两点相似度计算公式定义为:
[0027]
[0028] 其中Sk(i,j)表示内容视觉空间里i,j两点第k维度的相似度;ωk表示维度权重。
[0029] 作为优选,步骤6所述的构建加权无向连通图方法如下:将内容块看作顶点,内容块间的相似度看作顶点间边的权值。
[0030] 作为优选,步骤6所述的Kruskal算法,其具体实现包括以下子步骤:
[0031] 步骤6.1:读取步骤1获取的移动终端主键和移动终端分辨率信息;
[0032] 步骤6.2:依据移动终端分辨率确定阈值分割模型,即确定子图最大像素面积St;
[0033] 步骤6.3:将加权无向连通图的n个顶点看成n个孤立的连通分支,将所有边按权值从大到小排序;
[0034] 步骤6.4:判断各个连通分支的面积Sn:
[0035] 如果Sn>=St,则将连通分支从原图中分割出去,形成子图,将该连通分支与其他连通分支权值最大的边存储于关连池cr中;
[0036] 如果Sn
[0037] 步骤6.5:对于剩余的图,重复步骤6.4,直到剩余的图为空图。
[0038] 作为优选,用于实现所述的基于内容相似的网页分割方法的系统部署于代理服务器中,所述代理服务器能够获取用户请求与移动终端配置信息、获取Web服务器响应信息、获取处理后的响应信息,能够模拟移动终端用户发送请求、发送响应信息与移动终端配置信息给处理器、发送处理后的响应信息到用户。
[0039] 本发明根据移动终端浏览器信息自动将针对PC设计的网页分割成语义完整的子页,用户可以根据子图关系实现网页遍历。本发明可以用于移动终端访问Web网页的解决方案中,有效解决网页在移动终端的显示质量差,甚至无法显示的问题,从而提高用户服务体验。

附图说明

[0040] 图1:为本发明实施例的流程图。
[0041] 图2:为本发明实施例的系统部署示意图。

具体实施方式

[0042] 以下结合附图和具体实施例,详细描述本发明所提供的基于内容相似的网页分割方法。
[0043] 请见图1、图2,本发明所采用的技术方案是:一种基于内容相似的网页分割方法,包括以下步骤:
[0044] 步骤1:自动获取移动终端软硬件配置信息并存储;移动终端软硬件配置信息包括移动终端品牌,移动终端型号,移动终端系统类型及版本,移动终端分辨率,移动终端浏览器类型、版本、内核信息,并设定所述的移动终端品牌、移动终端型号、移动终端系统类型及版本移动终端浏览器类型、版本、内核信息为主键。具体实施时,使用Java等语言创建参数获取方法,截获HTTP请求头,通过分析请求头,获取相关参数,并将参数存于数据库中(如MySql数据库)。
[0045] 步骤2:依据用户请求获取Web服务器中的Web网页;为使移动终端能够得到正确的信息,本发明所提方法模拟移动终端用户发送请求给目标Web服务器,并获取Web服务器返回的响应信息。具体实施时,使用Java等语言创建页面获取方法,该方法可调用请求发送方法模拟移动终端用户发送请求给目标Web服务器,并获取Web服务器返回的响应信息。
[0046] 步骤3:对步骤2得到的Web页面,进行HTML规范处理与CSS预处理,实现HTML规范化和样式信息与数据的绑定;现行HTML存在大量错误与不规范,加之CSS样式信息本身存在大量冲突,并且特殊选择器中的样式规则无法简单地添加到对应标签的style属性值中。因此,进行HTML规范化处理与CSS预处理。具体实施时,对步骤2得到的Web页面进行HTML规范化,其具体采用HTMLClear Jar包实现;对步骤2得到的Web页面进行CSS预处理,其具体实现包括以下子步骤:
[0047] 步骤3.1:获取Web页面的进行HTML规范化后的样式信息;具体实现时,使用Java等语言创建样式信息获取算法,该算法依次从标签、