将互联网页面转换为无线应用协议页面的转换方法和装置的制作方法

文档序号:7668896阅读:80来源:国知局
专利名称:将互联网页面转换为无线应用协议页面的转换方法和装置的制作方法
技术领域
本发明涉及网络信息处理技术,尤其涉及 一种互联网页面转换为无线
应用协议(WAP, Wireless Application Protocol)页面的方法和装置。
背景技术
随着网络技术的发展,无线互联网技术也在迅速地发展,人们可以通 过移动通信终端(例如移动电话、无线掌上电脑等)可以随时随地地与他 人联系,同时随着通信资费的降低以及3G技术的推广,无线互联网将有极 大的发展,并改变我们的生活方式。
目前互联网上存在最多的资源是页面,但是这些页面是专为个人计算 机(PC)设计的超文本标记语言(HTML, HyperText Markup Language )
格式,由于移动通信终端屏幕大小、处理能力和网络带宽的限制,这些页 面无法直接在移动通信设备上进行浏览,针对这种情况,目前出现了以专 用的语言格式生成的WAP页面,用于在移动通信设备上显示页面。所述专 用的语言格式主要包括无线标记语言(WML, Wireless Markup Language ) 格式的标记语言,用于撰写在移动通信终端上能够显示的页面;还有一种 移动设备可扩展标记语言(XHTML-Mobile, Extensible HyperText Markup Language Mobile ),这种XHTML-Mobile语言格式以可扩展标识语言
(XHTML, The Extensible HyperText Markup Language )描述语言为基础, 以增强WAP页面的表现形式。
目前的移动通信设备,例如手机、具有无线通信功能的个人数字助理
(PDA)等,如果想浏览互联网上的HTML页面,则需要安装能够解析 HTML格式内容的浏览器,直接浏览HTML页面内容。但是,HTML浏览器对用户无线设备性能要求较高,大部分的无线通信设备无法达到流畅浏
览HTML页面的性能要求。
所以目前大部分移动通信设备只能利用WAP浏览器浏览专用的无线 标记语言(WML, Wireless Markup Language)或XHTML-Mobile格式的 WAP页面。然而,在互联网上,WAP页面的数量远远少于互联网页面(主 要是HTML页面),因此为了让移动通信设备用户能够浏览更丰富的信息, 需要将HTML页面转换成WAP页面,例如WML或XHTML-Mobile页面, 以在无线通信设备上进行浏览。
现有的将HTML页面转换成WAP页面的主要方式为参照原始的 HTML页面进行人工编辑,由人工制作出具有原始HTML页面内容的WML 或XHTML-Mobile页面,组成WAP站点供移动通信设备访问。但是,现 有的这种处理方法需要大量的人工参与,工作量巨大,无法适用于互联网 上海量的HTML页面。

发明内容
有鉴于此,本发明所要解决的技术问题在于提供一种将互联网页面转换 为WAP页面的方法,以实现自动转换页面,大量减少人工制作的工作量, 使移动通信终端可以直接利用WAP浏览器浏览大量的互联网页面。
本发明所要解决的另一技术问题在于提供一种将互联网页面转换为 WAP页面的装置,以实现自动转换页面,大量减少人工制作的工作量,使 移动通信终端可以直接利用WAP浏览器浏览大量的互联网页面。
为了实现上述发明目的,本发明的主要技术方案为
一种将互联网页面转换为无线应用协议WAP页面的转换方法,包括
A、 解析互联网页面,将该互联网页面转换为文档对象模型DOM树;
B、 从步骤A所述的互联网页面DOM树上提取页面内容,转换成WAP 页面的DOM树;
C、 按照所述WAP页面DOM树输出WAP页面。
优选的,所述步骤B具体为
Bl、根据所述互联网页面DOM树的内容信息选择页面提取方式;
B2、利用所选择的页面提取方式对所述互联网页面DOM树进行提取处
理;
B3、将提取的数据转换为WAP页面的DOM树。
优选的,所述步骤B1具体包括从所述互联网页面的DOM树中提取 文字内容,统计文字内容的大小,并与预定的阈值比较,如果超过所述阈值
则选择文字页面提取方式;如果没有超过所述阈值则选择完整页面提取方式。
优选的,当步骤B1选择文字页面提取方式时
步骤B2具体包括从所述互联网页面的DOM树中分别查找到标题元 素和正文元素,从查找到的元素的根节点开始遍历,提取出所述根节点及其 子节点的内容,并保持各节点之间的原有关系;
步骤B3具体包括将所提取出的标题元素和正文元素的节点转换为 WAP页面对应的节点,并按照各节点之间的原有关系将节点内容加入到一 新的DOM树上,得到WAP页面的DOM树。
优选的,当步骤B1选择完整页面提取方式时
步骤B2具体包括从所述互联网页面DOM树中查找可以在WAP页面 中显示的元素,提取这些元素的节点内容,并保持各节点之间的原有关系;
步骤B3具体包括将所提取出的各元素的节点转换为WAP页面对应 的节点,并按照各节点之间的原有关系将节点内容加入到一新的DOM树上, 得到WAP页面的DOM树。
1优选的,步骤B2中进一步包括
将所述互联网页面DOM树中的无法在WAP页面中显示的元素转换为 可以在WAP页面中显示的元素,提取这些元素的节点内容,并保持各节点 之间的原有关系。
优选的,步骤B1之后、B2之前进一步包括从所述互联网页面DOM树中查找区域元素,对区域元素进行优化处理,将经过优化处理后的区域元
素所限定的区块作为后续步骤B2的查找提取对象。
优选的,所述步骤A具体为维护一个解析栈,采用压栈出栈方式遍 历解析出所述整个互联网页面的元素,并生成DOM树;其中,对于没有结 東标签的元素将其压栈后立即出栈;对于可以有结束标签的元素进行回溯操 作,回溯成功则调节所述解析栈到成功回溯点,回溯失败则忽略当前的结東 标签。
优选的,步骤C具体为采用深度优先方法将所述WAP页面的DOM
树上的各个节点输出,组成一WAP页面。
优选的,所述互联网页面为超文本标记语言页面,所述WAP页面为无
线标记语言页面或移动设备可扩展标记语言页面。
一种将互联网页面转换为WAP页面的转换装置,包括
解析模块,用于解析互联网页面,将该互联网页面转换为DOM树;
页面提取模块,用于从所述解析模块输出的DOM树上提取页面内容,
转换成WAP页面的DOM树;
WAP页面构建模块,用于按照所述WAP页面DOM树构建输出WAP页面。
优选的,所述页面提取模块至少有两个;且所述转换装置进一步包括页 面提取控制模块,用于分析所述解析模块输出的DOM树,选择对应的一个 页面提取模块进行提取操作。
优选的,所述页面提取模块至少包括
文字页面提取模块,用于提取所述互联网页面DOM树的标题元素和正 文元素的节点内容,组成一个WAP页面的DOM树,并保持所提取节点之
间的原有关系;
完整页面提取模块,用于提取优化所述互联网页面DOM树的所有元素 的节点内容,转换成可以在WAP页面显示的元素,组成一个WAP页面的 DOM树,并保持所提取节点之间的原有关系。
本发明中,由于先将互联网页面转换成DOM树,使得互联网页面的文档可以由非常利于计算机分析的DOM树表示,接下来釆用专用的提取方式 从所述DOM树中提取页面内容信息,再转换成可以在WAP页面中显示的 内容,组成WAP页面的DOM树,最后根据WAP页面的DOM树中的信息 生成WAP页面。因此,本发明完全可以实现将互联网页面(例如HTML页 面)自动转换为WAP页面,大量减少人工制作的工作量,使移动通信终端 可以直接利用WAP浏览器浏览大量的互联网页面。本发明可极大地提高用 户体验,也使得用户可浏览的页面资源由以前数量较少的WAP网站扩充到 了整个互联网,极大地提高了资源的丰富程度,为无线互联网的普及和发展 将有着重要的推动作用。


图1为本发明所述将HTML页面转换为WAP页面的转换装置的一种结 构示意图2为本发明所述将HTML页面转换为WAP页面的转换方法的 一种流 程图3为一种页面导航栏的示意图。
具体实施例方式
下面通过具体实施例和附图对本发明做进 一 步详细说明。 以下实施例中,以所述互联网页面为HTML页面,所述WAP页面为 WML或XHTML-Mobile页面为例进行说明。
图1为本发明所述将HTML页面转换为WAP页面的转换装置的一种结
构示意图。参见图1,该装置包括
解析模块(HTML Parser) 101,用于解析HTML页面文档11 ,根据解 析结果将该HTML页面文档转换为HTML的DOM树12。
页面提取控制模块(SkeeterNest) 102,是本发明所述转换装置的核心控制模块,负责HTML页面类型的区分与判断,根据HTML页面的类型调 用不同的页面提取模块103来进行页面提取。
页面提取模块103,位于所述转换装置的最底层,包括1-N个页面提取 方式单元(Skeeter),针对不同类型的页面,将釆用不同类型的页面提取方 式或者多种页面提取方式的组合进行提取。所述提取方式可以从所述解析模 块输出的HTML的DOM树12上提取页面内容,组成WAP页面的DOM树 13。
WAP页面构建模块104,用于按照所述WAP页面的DOM树13构建 输出WAP页面文档14。
本发明中,所述页面提取模块至少有两个
其中一个为文字页面提取模块,主要用于处理互联网上大量的新闻页 面,因此也可以称为新闻页面提取模块,由于新闻页面的主要内容是文字部 分,因此该模块用于提取所述新闻页面的HTML页面DOM树的标题元素和 正文元素的节点内容,组成一个WAP页面的DOM树,并保持所提取节点 之间的原有关系。
另一个为完整页面提取模块,用于提取优化所述互联网页面DOM树的 所有元素的节点内容,转换成可以在WAP页面显示的元素,组成一个WAP 页面的DOM树,并保持所提取节点之间的原有关系。该完整页面提取模块 主要是用于处理没有明显特征的HTML页面,可以釆用保留页面所有内容 的提取方式,使得转换后的WAP页面尽量保持原HTML页面的所有内容。
另外,在本发明的其它实施例中,也可对HTML页面进行进一步的细 分得到针对某种具体页面类型的页面提取模块,例如针对论坛页面的页面提 取模块、针对导航栏页面的页面提取模块等,以进一步提高转换效果。
图2为本发明所述将HTML页面转换为WAP页面的转换方法的一种 流程图。参见图2,该方法包括
步骤201、解析HTML页面文档,并将其转化为一颗HTML的DOM 树,以供后续分析。本步骤201为所述解析模块101的执行过程。
所述的解析过程可以基于现有的WML解析方法,但是增加了对非完 整性标签的支持。
解析模块101釆用状态机的方式对HTML页面文档进行解析,顺序遍
历页面文档,对不同的标签和文本进行状态判断,随着页面文本的遍历,将
会在状态机的各个不同状态之间进行跳转,状态机对每个状态有着不同的处
理,例如在DOM树上创建元素、修改元素属性等,同时会根据当前状态和
下一个读入的页面字符,跳转到其他状态或留在当前状态,直到页面文档全
部读完,同时维护一个解析栈(stack),保留解析的中间状态。
例如对于如下的 一段HTML文档
<formula>complex formula see original document page 11</formula>
解析模块101的状态机初始状态为正文状态(STATE—HTML—TEXT ),设
立一个指针,从页面文档首部即"<"开始遍历,当发现是"<"且当前状态 为 STATE—HTML—TEXT 时, 进入元素开始状态
(STATE—HTML—ELEMENT),继续遍历所述文档,直到找到">"结東, 进入元素结東状态(ST ATE—HTML—ELEMENT_FINISH ),此时创建元素
"html"压入到解析栈中,并桂到DOM树上,同时继续向前遍历,当解析 到〈head〉时,创建"head"元素,并加入到当前解析栈首部元素"html"的 子节点列表中,并将"head"压栈,继续向前遍历,当解析到々head〉时,进 行出栈操作,将刚才压入解析栈的"head"出栈,并继续解析,后续的解析 工作与前类似,直到最后完成整个文本的遍历。
维护解析栈的主要作用是为了支持非完整性标签。由于HTML中,有 些元素可能有开始标签但没有结東标签,如果不对这种情况作特殊处理,就 会在创建DOM树的情况时出现错误,因此本发明需要对非完整性标签进行 处理。
为了支持非完整性标签,本发明主要以下强制出栈法和解析栈回溯查 找法进行处理
a)、强制出栈法
对于HTML中的 area、 base、 basefont、 br、 col、 frame 、 hr、 img、 input 、 isindex、 link、 meta、 param等不需要结束标签的元素,首先将其压入解析栈 后再立即出栈,这样就不需要等找到一个所谓的结東标签才进行出栈工作。
b)对于其他的元素,在目前HTML中可以有结東标签,也可以没有 结束标签。目前的IE等各种浏览器并不强制要求HTML中标出结東标签, 加之IE等浏览器对这些元素具有良好的容错性,因此在目前的浏览器中显 示没有问题。但是,对于WAP页面,这些可有可无的结東标签对解析栈的 操作会造成一定影响,需要进行特殊处理,即需要进行解析栈回溯查找,具 体包括以下两种情况
bl)、如果成功回溯,调节解析栈到成功回溯点。
例如以下的HTML文档
</z/m/> <6o(i_y〉 </ >/ze//o wo厂/(i〈/^/w/〉 当解析到々html〉时,解析栈中的元素为html、 body、 p,查找当前元
素p失败;回溯解析栈,查找body失败;回溯到元素html,对比确认为html
元素,修改DOM树当前的节点指针到html的父节点。此处html为根节点,
则触发结東解析文档消息(endDocument消息),结東整个页面的解析工作。
b2)、回溯失败,忽略当前的结束标识。
例如以下的HTML文档
当解析到々p〉时,解析栈中的元素为html、 body,查找当前元素body 失败;回溯到html,查找p失败;已经回溯到栈底,回溯失败,忽略当前结 東表示〈/p〉。
步骤202、对步骤201解析出的HTML页面的DOM树进行分析,选择 适合所转换HTML页面的页面提取方式。
本步骤202主要由所述页面提取控制模块执行,用于选择不同的页面抽 取方式进行尝试与综合处理,从而将步骤201解析得到的一个HTML页面 的DOM树转换成 一 个WML/XHTML-Mobile页面的DOM树。
本步骤202采用的方式为
利用正文提取技术,将所述HTML页面的DOM树中的各个文字内容部 分抽取出来,并统计文字内容的大小,例如统计提取出的诸如字数、标点符 号个数,字体大小等信息,并与预定的阈值进行比较,所述的阈值可以根据 经验来设定,如果某一文字内容部分的大小超过一定的阈值,则判定所述 HTML页面为新闻页面,需要采用文字页面提取方式进行提取;如果所有的 文字内容部分的大小都没有超过所述阈值,则判定所述HTML页面为无明
显特征的页面,采用保留页面所有内容的方式进行提取,即采用完整页面提 取方式进行提取。
步骤203、调用步骤202所选择的页面提取方式来完成对所述HTML页 面的DOM树的信息提取以及重组成WML/XHTML-Mobile页面的DOM树。
例如,本实施例中主要包含针对新闻页面的文字页面提取方式和针对非 新闻页面的完整页面提取方式,下面分别介绍这两种提取方式的具体处理方 法
1) 文字页面提取方式。
如果步骤202选择文字页面提取方式,则判定所述HTML页面新闻页 面,此时需从所述HTML页面的DOM树中分别查找到标题元素和正文元素, 从查找到的元素的根节点开始遍历,提取出所述根节点及其子节点的内容, 并保持各节点之间的原有关系;然后将所提取出的标题元素和正文元素的节 点类型转换为WML/XHTML-Mobile页面对应的节点类型,并按照各节点之 间的原有关系将节点类型和内容加入到 一 新的DOM树上,得到 WML/XHTML-Mobile页面的DOM树。
2) 完整页面提取方式,也称为默认页面提取方式。
如果步骤202选择完整页面提取方式,则判定所述HTML页面为无明 显特征的页面,此时需要保留该页面的所有内容,具体处理过程如下
(a)从所述HTML页面DOM树中查找在WML/XHTML-Mobile页面 中有对应项的元素,即该元素可在WML/XHTML-Mobile页面中显示,提取
这些元素的节点内容,同时也保持这些元素节点在原有HTML页面DOM树 上的相应关系。
(b )将所述HTML页面DOM树中的无法在WML/XHTML-Mobile页 面中显示的元素转换为可以在WML/XHTML-Mobile页面中显示的元素,提 取这些元素的节点内容,并保持各节点之间的原有关系。
此步骤主要处理不能自适应手机屏幕大小的样式设置的元素,例如对于 输入框元素,将该输入框元素的大小转换为指定的手机屏幕尺寸大小,以避 免在手机上出现显示不下的情况;另外对于所有的图片元素,将会利用专门 的图片转换服务器将图像转化为gif格式,并将其缩放到适合手机屏幕大小 的尺寸。
(c)将上述步骤(a) 、 (b)中提取转换出的可在WML/XHTML-Mobile 页面中显示的每个元素节点转换为其在WML/XHTML-Mobile页面中对应的 元素节点,并保持原有各个节点之间的关系,加入到一颗新的DOM树上, 形成 一颗WML/XHTML-Mobile页面的DOM树。
另外,在步骤(a)之前,还可以进一步包括从所述HTML页面DOM 树中査找区域元素,对区域元素进行优化处理,将经过优化处理后的区域元 素所限定的区块作为后续步骤(a) 、 (b)的査找提取对象。例如,对于相 互遮盖的层,仅选取内容最丰富的层作为后续操作的提取对象以进行显示; 对于一些广告元素,则可以执行去噪处理,去除掉各种无关的广告元素区域。
的用户体验的页面特征细节。例如当查找到类似与图3所述的页面导航栏 30时,可以将多个导航链接用"+"号隐藏起来,用户点击"+"号时才展
开这个部分进行浏览,以进一步提高转换效果。
步骤204、将步骤203转换后的WML/XHTML-Mobile页面DOM树输 出为 一 张WML/XHTML-Mobile页面文档。本步骤所使用的方法比较简单, 直接采用深度优先的方法将WML/XHTML-Mobile页面DOM树上的各个节 点输出即可,输出的WML/XHTML-Mobik页面文档将保留在存储服务器中,
前台的计算机图形接口 (CGI)将会访问存储服务器获取转换后的
WML/XHTML-Mobile页面文档并显示对应的WAP页面给移动通信设备用 户。本步骤204为所述WAP页面构建模块104的执行过程。
以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不 局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到 的变化或替换,都应涵盖在本发明的保护范围之内。
权利要求
1、一种将互联网页面转换为无线应用协议WAP页面的转换方法,其特征在于,包括A、解析互联网页面,将该互联网页面转换为文档对象模型DOM树;B、从步骤A所述的互联网页面DOM树上提取页面内容,转换成WAP页面的DOM树;C、按照所述WAP页面DOM树输出WAP页面。
2、 根据权利要求l所述的方法,其特征在于,所述步骤B具体为 Bl、根据所述互联网页面DOM树的内容信息选择页面提取方式;B2、利用所选择的页面提取方式对所述互联网页面DOM树进行提取处理;B3、将提取的数据转换为WAP页面的DOM树。
3、 根据权利要求2所述的方法,其特征在于,所述步骤Bl具体包括 从所述互联网页面的DOM树中提取文字内容,统计文字内容的大小,并与 预定的阈值比较,如果超过所述阈值则选择文字页面提取方式;如果没有超 过所述阈值则选择完整页面提取方式。
4、 根据权利要求3所述的方法,其特征在于,当步骤B1选择文字页面 提取方式时步骤B2具体包括从所述互联网页面的DOM树中分别查找到标题元 素和正文元素,从查找到的元素的根节点开始遍历,提取出所述根节点及其 子节点的内容,并保持各节点之间的原有关系;步骤B3具体包括将所提取出的标题元素和正文元素的节点转换为 WAP页面对应的节点,并按照各节点之间的原有关系将节点内容加入到一 新的DOM树上,得到WAP页面的DOM树。
5、 根据权利要求3所述的方法,其特征在于,当步骤B1选择完整页面 提取方式时步骤B2具体包括从所述互联网页面DOM树中查找可以在WAP页面 中显示的元素,提取这些元素的节点内容,并保持各节点之间的原有关系;步骤B3具体包括将所提取出的各元素的节点转换为WAP页面对应 的节点,并按照各节点之间的原有关系将节点内容加入到一新的DOM树上, 得到WAP页面的DOM树。
6、 根据权利要求5所述的方法,其特征在于,步骤B2中进一步包括 将所述互联网页面DOM树中的无法在WAP页面中显示的元素转换为可以在WAP页面中显示的元素,提取这些元素的节点内容,并保持各节点 之间的原有关系。
7、 根据权利要求5所述的方法,其特征在于,步骤B1之后、B2之前 进一步包括从所述互联网页面DOM树中查找区域元素,对区域元素进行 优化处理,将经过优化处理后的区域元素所限定的区块作为后续步骤B2的查找提取对象。
8、 根据权利要求1所述的方法,其特征在于,所述步骤A具体为维 护一个解析栈,釆用压栈出栈方式遍历解析出所述整个互联网页面的元素,并生成DOM树;其中,对于没有结東标签的元素将其压栈后立即出栈;对 于可以有结東标签的元素进行回溯操作,回溯成功则调节所述解析栈到成功回溯点,回溯失败则忽略当前的结束标签。
9、 根据权利要求1所述的方法,其特征在于,步骤C具体为采用深 度优先方法将所述WAP页面的DOM树上的各个节点输出,组成一 WAP 页面。
10、 根据权利要求1至9任一项所述的方法,其特征在于,所述互联网 页面为超文本标记语言页面,所述WAP页面为无线标记语言页面或移动设 备可扩展标记语言页面。
11、 一种将互联网页面转换为WAP页面的转换装置,其特征在于,包括解析模块,用于解析互联网页面,将该互联网页面转换为DOM树;页面提取模块,用于从所述解析模块输出的DOM树上提取页面内容,转换成WAP页面的DOM树;WAP页面构建模块,用于按照所述WAP页面DOM树构建输出WAP页面。
12、 根据权利要求11所述的转换装置,其特征在于,所述页面提取模 块至少有两个;且所述转换装置进一步包括页面提取控制模块,用于分析所 述解析模块输出的DOM树,选择对应的一个页面提取模块进行提取操作。
13、 根据权利要求ll所述的转换装置,其特征在于,所述页面提取模 块至少包括文字页面提取模块,用于提取所述互联网页面DOM树的标题元素和正 文元素的节点内容,组成一个WAP页面的DOM树,并保持所提取节点之 间的原有关系;完整页面提取模块,用于提取优化所述互联网页面DOM树的所有元素 的节点内容,转换成可以在WAP页面显示的元素,组成一个WAP页面的 DOM树,并保持所提取节点之间的原有关系。
全文摘要
本发明公开了将互联网页面转换为无线应用协议(WAP)页面的转换方法,包括解析互联网页面,将该互联网页面转换为文档对象模型(DOM)树;从所述互联网页面DOM树上提取页面内容,转换成WAP页面的DOM树;按照所述WAP页面DOM树输出WAP页面。装置包括解析模块,用于解析互联网页面,将该互联网页面转换为DOM树;页面提取模块,用于从所述互联网页面DOM树上提取页面内容,转换成WAP页面的DOM树;WAP页面构建模块,用于按照所述WAP页面DOM树构建输出WAP页面。利用本发明,可以实现自动转换页面,大量减少人工制作的工作量,使移动通信终端可以直接利用WAP浏览器浏览大量的互联网页面。
文档编号H04L29/08GK101197849SQ200710303789
公开日2008年6月11日 申请日期2007年12月21日 优先权日2007年12月21日
发明者为 王, 宇 纪 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1