转码时实现控件替换的方法及装置制造方法及图纸

技术编号:8980648 阅读:152 留言:0更新日期:2013-07-31 22:47
本发明专利技术提出了一种转码时实现控件替换的方法,包括以下步骤:线下获取网页上的第一控件及所述第一控件操纵的第一内容节点;将第一内容节点以pattern和xpath的形式输出到模板文件;线上载入模板文件;当用户访问的网页包括模板文件中的pattern和xpath时,识别并标注网页的第一控件及所述第一控件操纵的第一内容节点;通过重写脚本来生成第二控件以替换第一控件。本发明专利技术还提出了一种转码时实现控件替换的装置。本发明专利技术通过替换原网页中使用了脚本而不能正常工作的控件及节点,使用户在使用移动终端时也可以正常地浏览这些网页,为用户提供了便利。

【技术实现步骤摘要】

本专利技术涉及移动终端互联网应用
,特别涉及一种转码时实现控件替换的方法及装置
技术介绍
当前的互联网上的大部分网页都是为PC (Personal Computer,个人电脑)浏览而设计的,通常不会考虑到手机、平板电脑等移动终端的流量、性能和兼容性等问题。为了方便原本为PC浏览设计的网页能够较好地运行在手机、平板电脑等移动终端上,通常移动终端会向用户提供网页的转码服务。但是,当网页经过转码后,DOM树结构会发生改变,javascript等脚本也不能运行。如果原网页中有一些重要的信息使用javascript脚本的控件进行实现,则转码后这些控件就不能正常工作了,造成网页中重要信息的丢失。例如网站中的tab选项卡,在PC浏览时可以显示多个选项卡,并且用户通过鼠标点击或者移动至某个选项卡上,自动显示该选项卡对应的tab内容,如http://www.55bbs.com/中用户点击“购物”则对应出现购物的tab的内容,如果点击“丽人”则对应出现丽人的tab的内容,但是在移动终端只能显示一个tab的内容,其他tab的内容都被消除或者隐藏了,用户无法通过交互切换不同的tab以浏览对应的内容。
技术实现思路
本专利技术旨在至少在一定程度上解决上述技术问题之一或至少提供一种有用的商业选择。为此,本专利技术的第一个目的在于提出一种转码时实现控件替换的方法及装置,可以让用户在使用移动终 端浏览使用javascript等脚本的网页时也可以实现正常浏览。本专利技术的第二个目的在于提出一种转码时实现控件替换的装置。为达到上述目的,本专利技术第一方面的实施例提出了一种转码时实现控件替换的方法,包括以下步骤:线下获取网页上的第一控件及所述第一控件操纵的第一内容节点;将所述节点以pattern和xpath的形式输出到模板文件;线上载入所述模板文件;当用户访问的网页包括所述模板文件中的所述pattern和xpath时,识别并标注所述网页的第一控件及所述第一控件操纵的第一内容节点;通过重写脚本来生成第二控件以替换所述第一控件。根据本专利技术实施例的转码时实现控件替换的方法,通过分析原网页中使用了脚本而不能正常工作的控件及节点,并自动加以替换,且保证替换后的网页跟原网页具有同样的结构和内容,使用户在使用移动终端时也可以正常地浏览这些网页,为用户提供了便利。在本专利技术的一个实施例中,所述转码时实现控件替换的方法进一步包括:向所述第二控件操纵的第二内容节点增加样式和布局信息。在本专利技术的一个实施例中,所述获取网页上的第一控件及所述第一控件操纵的第一内容节点的步骤包括:获取所述网页的DOM树样式;对具有鼠标事件的DOM树上的节点模拟鼠标事件;获取模拟鼠标事件后所述DOM树样式的变化;根据所述变化获取网页上的第一控件及所述第一控件操纵的第一内容节点。在本专利技术的一个实施例中,所述样式和布局信息与所述第一内容节点的样式和布局信息对应。本专利技术第二方面的实施例提出了一种转码时实现控件替换的装置,包括:线下获取模块,所述线下获取模块用于线下获取网页上的第一控件及所述第一控件操纵的第一内容节点;输出模块,所述输出模块用于将所述节点以pattern和xpath的形式输出到模板文件;线上载入模块,所述线上载入模块用于线上载入所述模板文件;识别模块,所述识别模块用于当用户访问的网页包括所述模板文件中的所述pattern和xpath时,识别并标注所述网页的第一控件及所述第一控件操纵的第一内容节点;替换模块,所述替换模块用于通过重写javascript来生成第二控件以替换所述第一控件。根据本专利技术实施例的转码时实现控件替换的装置,通过分析原网页中使用了脚本而不能正常工作的控件及节点,并自动加以替换,且保证替换后的网页跟原网页具有同样的结构和内容,使用户在使用移动终端时也可以正常地浏览这些网页,为用户提供了便利。在本专利技术的一个实施例中,所述转码时实现控件替换的装置进一步包括:增加模块,所述增加模块用于向所述第二控件操纵的第二内容节点增加样式和布局信息。在本专利技术的一个实施例中,所述线下获取模块包括:第一获取单元,所述第一获取单元用于获取所述网页的DOM树样式;模拟单元,所述模拟单元用于对具有鼠标事件的DOM树上的节点模拟鼠标事件;第二获取单元,所述第二获取单元用于获取模拟鼠标事件后所述DOM树样式的变化;第三获取单元,所述第三获取单元用于根据所述变化获取网页上的第一控件及所述第一控件操纵的第一内容节点。在本专利技术的一个 实施例中,所述样式和布局信息与第一内容节点的样式和布局信息对应。本专利技术的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到。附图说明本专利技术的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:图1为本专利技术一个实施例的转码时实现控件替换的方法的流程图;图2为本专利技术另一个实施例的转码时实现控件替换的方法的流程图;图3为本专利技术一个实施例的转码时实现控件替换的装置的示意图;以及图4为本专利技术另一个实施例的转码时实现控件替换的装置的示意图。具体实施例方式下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本专利技术,而不能理解为对本专利技术的限制。在本专利技术中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本专利技术中的具体含义。下面分别参考图1和图2对本专利技术实施例的转码时实现控件替换的方法的流程进行描述。如图1所示,根据本专利技术第一方面的实施例的转码时实现控件替换的方法,包括以下步骤:SlOl:线下获取网页上的第一控件及第一控件操纵的第一内容节点。具体地,对网页的分析可通过网页挖掘程序来实现,之后,如图2所示,获取网页上的第一控件及第一控件操纵的第一内容节点包括以下步骤:SlOll:获取网页及其DOM树样式。D0M,即文档对象模型(Document Object Model),是一个来自W3C的成熟标准。DOM是一种在浏览器内编程的模型,同时也是XMUeXtensible Markup Language,可扩展标记语言)的主要接口,DOM与语言和平台无关,它是基于树的APKApplication ProgrammingInterface,应用程序编程接口),它把所有的数据以父子的节点层次结构装入内存构成一棵树,这些节点的类型可以是元素、文本、属性、注释或其它。DOM树允许开发者读取、创建、删除和编辑XML数据。 S1012:对具有鼠标事件的DOM树上的节点模拟鼠标事件。如果DOM树上的某个节点具有鼠标事件,则线下程序模拟该鼠标事件。S1013:获取模拟鼠标事件后DOM树样式的变化。对比模拟鼠标事件前后,检查DOM树样式的变化,从而检查出可能无法正常工作的控件,即第一控件。S1014:根据DOM树样式的变化获取网页上的第一控件及第一控件操本文档来自技高网...

【技术保护点】
一种转码时实现控件替换的方法,其特征在于,包括以下步骤:线下获取网页上的第一控件及所述第一控件操纵的第一内容节点;将所述第一内容节点以pattern和xpath的形式输出到模板文件;线上载入所述模板文件;当用户访问的网页包括所述模板文件中的所述pattern和xpath时,识别并标注所述网页的第一控件及所述第一控件操纵的第一内容节点;通过重写脚本来生成第二控件以替换所述第一控件。

【技术特征摘要】
1.一种转码时实现控件替换的方法,其特征在于,包括以下步骤: 线下获取网页上的第一控件及所述第一控件操纵的第一内容节点; 将所述第一内容节点以pattern和xpath的形式输出到模板文件; 线上载入所述模板文件; 当用户访问的网页包括所述模板文件中的所述pattern和xpath时,识别并标注所述网页的第一控件及所述第一控件操纵的第一内容节点; 通过重写脚本来生成第二控件以替换所述第一控件。2.根据权利要求1所述的方法,其特征在于,进一步包括步骤: 向所述第二控件操纵的第二内容节点增加样式和布局信息。3.根据权利要求1或2所述的方法,其特征在于,获取网页上的第一控件及所述第一控件操纵的第一内容节点的步骤包括: 获取所述网页的DOM树样式; 对具有鼠标事件的DOM树上的节点模拟鼠标事件; 获取模拟鼠标事件后所述DOM树样式的变化;以及 根据所述变化获取网页上的第一控件及所述第一控件操纵的第一内容节点。4.根据权利要求1或2所述的方法,其特征在于,所述样式和布局信息与所述第一内容节点的样式和布局信息对应。5.一种转码时实现控件替换的装置,其特征在于,包括: 线下获取模块,所述线下获取模块用于线下获取网页上的第一控件及所述...

【专利技术属性】
技术研发人员:王智杰刘承诚王倩
申请(专利权)人:百度在线网络技术北京有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1