网页源码迁移方法和装置.pdf

上传人:00062****4422 文档编号:4043661 上传时间:2018-08-12 格式:PDF 页数:21 大小:1.22MB
返回 下载 相关 举报
摘要
申请专利号:

CN201410829317.6

申请日:

2014.12.26

公开号:

CN104536751A

公开日:

2015.04.22

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 9/44申请日:20141226|||公开

IPC分类号:

G06F9/44; G06F9/445

主分类号:

G06F9/44

申请人:

小米科技有限责任公司

发明人:

谭国斌; 余鹏; 马哲

地址:

100085北京市海淀区清河中街68号华润五彩城购物中心二期13层

优先权:

专利代理机构:

北京三高永信知识产权代理有限责任公司11138

代理人:

张所明

PDF下载: PDF下载
内容摘要

本公开揭示了一种网页源码迁移方法和装置,属于互联网技术领域。所述方法包括:接收迁移指令,所述迁移指令用于请求将目标网页的网页源码的编程语言由第一版本迁移至第二版本;获取所述目标网页的网页源码;将所述网页源码的编程语言由所述第一版本自动迁移至所述第二版本。解决了相关技术中需要开发人员使用HTML5对网站的网页源码进行重新编写的问题;达到了可以提高网页源码的编程语言的迁移效率的效果。

权利要求书

权利要求书
1.  一种网页源码迁移方法,其特征在于,包括:
接收迁移指令,所述迁移指令用于请求将目标网页的网页源码的编程语言 由第一版本迁移至第二版本;
获取所述目标网页的网页源码;
将所述网页源码的编程语言由所述第一版本自动迁移至所述第二版本。

2.  根据权利要求1所述的方法,其特征在于,所述将所述网页源码的编程 语言由所述第一版本自动迁移至所述第二版本,包括:
通过预设的第一正则表达式对所述网页源码中去除属性值所对应的代码段 之外的代码段进行匹配;
若对应于所述第一正则表达式的匹配结果为第一初始代码段,则获取所述 第一正则表达式在所述第二版本中所对应的第一迁移代码段;
使用所述第一迁移代码段替换所述第一初始代码段。

3.  根据权利要求2所述的方法,其特征在于,所述第一正则表达式包括用 于匹配声明代码段的正则表达式,所述声明代码段是用于声明所述网页源码的 编程语言的版本的代码段。

4.  根据权利要求1所述的方法,其特征在于,所述将所述网页源码的编程 语言由所述第一版本自动迁移至所述第二版本,包括:
通过预设的第二正则表达式对所述网页源码中属性值所对应的代码段进行 匹配;
若对应于所述第二正则表达式的匹配结果为属性值,则获取所述第二正则 表达式在所述第二版本中所对应的代码生成格式,根据所述属性值以及所述代 码生成格式生成第二迁移代码段;
确定所述网页源码中所述属性值所对应的第二初始代码段;
使用所述第二迁移代码段替换所述第二初始代码段。

5.  根据权利要求4所述的方法,其特征在于,所述第二正则表达式包括如 下表达式中的至少一种:
用于匹配被所述第二版本遗弃的标签的正则表达式;
用于匹配被所述第二版本遗弃的属性的正则表达式;
用于匹配更新标签的正则表达式,所述更新标签为所述网页源码的各个标 签中表达方式与所述第二版本中的对应标签的表达方式不同的标签;
用于匹配未闭合的标签的正则表达式;
用于匹配大写的标签名的正则表达式;
用于匹配未被引号包含的属性的正则表达式。

6.  根据权利要求1至5任一所述的方法,其特征在于,所述方法还包括:
获取各个自定义正则表达式以及每个自定义正则表达式所对应的代码生成 格式,所述自定义正则表达式用于匹配所述网页源码中的自定义格式的代码段;
通过所述各个自定义正则表达式对所述网页源码中所述自定义格式的代码 段进行匹配;
对于任一所述的自定义正则表达式,若对应于所述自定义正则表达式的匹 配结果为属性值,则根据所述属性值以及所述自定义正则表达式所对应的代码 生成格式生成第三迁移代码段;
确定所述网页源码中对应于所述自定义正则表达式的属性值的第三初始代 码段;
使用所述第三迁移代码段替换所述第三初始代码段。

7.  一种网页源码迁移装置,其特征在于,包括:
指令接收模块,被配置为接收迁移指令,所述迁移指令用于请求将目标网 页的网页源码的编程语言由第一版本迁移至第二版本;
源码获取模块,被配置为获取所述目标网页的网页源码;
迁移模块,被配置为将所述源码获取模块获取到的所述网页源码的编程语 言由所述第一版本自动迁移至所述第二版本。

8.  根据权利要求7所述的装置,其特征在于,所述迁移模块,包括:
第一匹配子模块,被配置为通过预设的第一正则表达式对所述网页源码中 去除属性值所对应的代码段之外的代码段进行匹配;
第一获取子模块,被配置为在所述第一匹配模块的匹配结果为对应于所述 第一正则表达式的匹配结果为第一初始代码段时,获取所述第一正则表达式在 所述第二版本中所对应的第一迁移代码段;
第一替换子模块,被配置为使用所述第一迁移代码段替换所述第一初始代 码段。

9.  根据权利要求8所述的装置,其特征在于,所述第一正则表达式包括用 于匹配声明代码段的正则表达式,所述声明代码段是用于声明所述网页源码的 编程语言的版本的代码段。

10.  根据权利要求7所述的装置,其特征在于,所述迁移模块,包括:
第二匹配子模块,被配置为通过预设的第二正则表达式对所述网页源码中 属性值所对应的代码段进行匹配;
迁移代码段生成子模块,被配置为在所述第二匹配子模块的匹配结果为对 应于所述第二正则表达式的匹配结果为属性值时,获取所述第二正则表达式在 所述第二版本中所对应的代码生成格式,根据所述属性值以及所述代码生成格 式生成第二迁移代码段;
初始代码段确定子模块,被配置为确定所述网页源码中所述属性值所对应 的第二初始代码段;
第二替换子模块,被配置为使用所述第二迁移代码段替换所述第二初始代 码段。

11.  根据权利要求10所述的装置,其特征在于,所述第二正则表达式包括 如下表达式中的至少一种:
用于匹配被所述第二版本遗弃的标签的正则表达式;
用于匹配被所述第二版本遗弃的属性的正则表达式;
用于匹配更新标签的正则表达式,所述更新标签为所述网页源码的各个标 签中表达方式与所述第二版本中的对应标签的表达方式不同的标签;
用于匹配未闭合的标签的正则表达式;
用于匹配大写的标签名的正则表达式;
用于匹配未被引号包含的属性的正则表达式。

12.  根据权利要求7至11任一所述的装置,其特征在于,所述装置还包括:
信息获取模块,被配置为获取各个自定义正则表达式以及每个自定义正则 表达式所对应的代码生成格式,所述自定义正则表达式用于匹配所述网页源码 中的自定义格式的代码段;
源码匹配模块,被配置为通过所述各个自定义正则表达式对所述网页源码 中自定义格式的代码段进行匹配;
迁移代码段生成模块,被配置为对于任一所述的自定义正则表达式,若对 应于所述自定义正则表达式的匹配结果为属性值,则根据所述属性值以及所述 自定义正则表达式所对应的代码生成格式生成第三迁移代码段;
初始代码段确定模块,被配置为确定所述网页源码中对应于所述自定义正 则表达式的属性值的第三初始代码段;
代码段替换模块,被配置为使用所述第三迁移代码段替换所述第三初始代 码段。

13.  一种网页源码迁移装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
接收迁移指令,所述迁移指令用于请求将目标网页的网页源码的编程语言 由第一版本迁移至第二版本;
获取所述目标网页的网页源码;
将所述网页源码的编程语言由所述第一版本自动迁移至所述第二版本。

说明书

说明书网页源码迁移方法和装置
技术领域
本公开涉及互联网技术领域,特别涉及一种网页源码迁移方法和装置。
背景技术
随着HTML5(Hyper Text Mark-up Language 5,超文本标记语言第五版)技 术的日益完善,越来越多的开发人员开始使用HTML5来开发网站。
然而,对于已有的使用HTML4开发的网站,为了使得该网站的网页源码的 编程语言能够由HTML4迁移至HTML5,开发人员需要使用HTML5对该网站 的网页源码进行重新编写。
发明内容
本公开提供了一种网页源码迁移方法和装置。所述技术方案如下:
根据本公开实施例的第一方面,提供一种网页源码迁移方法,包括:
接收迁移指令,迁移指令用于请求将目标网页的网页源码的编程语言由第 一版本迁移至第二版本;
获取目标网页的网页源码;
将网页源码的编程语言由第一版本自动迁移至第二版本。
可选地,将网页源码的编程语言由第一版本自动迁移至第二版本,包括:
通过预设的第一正则表达式对网页源码中去除属性值所对应的代码段之外 的代码段进行匹配;
若对应于第一正则表达式的匹配结果为第一初始代码段,则获取第一正则 表达式在第二版本中所对应的第一迁移代码段;
使用第一迁移代码段替换第一初始代码段。
可选地,第一正则表达式包括用于匹配声明代码段的正则表达式,声明代 码段是用于声明网页源码的编程语言的版本的代码段。
可选地,将网页源码的编程语言由第一版本自动迁移至第二版本,包括:
通过预设的第二正则表达式对网页源码中属性值所对应的代码段进行匹 配;
若对应于第二正则表达式的匹配结果为属性值,则获取第二正则表达式在 第二版本中所对应的代码生成格式,根据属性值以及代码生成格式生成第二迁 移代码段;
确定网页源码中属性值所对应的第二初始代码段;
使用第二迁移代码段替换第二初始代码段。
可选地,第二正则表达式包括如下表达式中的至少一种:
用于匹配被第二版本遗弃的标签的正则表达式;
用于匹配被第二版本遗弃的属性的正则表达式;
用于匹配更新标签的正则表达式,更新标签为网页源码的各个标签中表达 方式与第二版本中的对应标签的表达方式不同的标签;
用于匹配未闭合的标签的正则表达式;
用于匹配大写的标签名的正则表达式;
用于匹配未被引号包含的属性的正则表达式。
可选地,方法还包括:
获取各个自定义正则表达式以及每个自定义正则表达式所对应的代码生成 格式,自定义正则表达式用于匹配网页源码中的自定义格式的代码段;
通过各个自定义正则表达式对网页源码中自定义格式的代码段进行匹配;
对于任一的自定义正则表达式,若对应于自定义正则表达式的匹配结果为 属性值,则根据属性值以及自定义正则表达式所对应的代码生成格式生成第三 迁移代码段;
确定网页源码中对应于自定义正则表达式的属性值的第三初始代码段;
使用第三迁移代码段替换第三初始代码段。
根据本公开实施例的第二方面,提供一种网页源码迁移装置,包括:
指令接收模块,被配置为接收迁移指令,迁移指令用于请求将目标网页的 网页源码的编程语言由第一版本迁移至第二版本;
源码获取模块,被配置为获取目标网页的网页源码;
迁移模块,被配置为将源码获取模块获取到的网页源码的编程语言由第一 版本自动迁移至第二版本。
可选地,该迁移模块,包括:
第一匹配子模块,被配置为通过预设的第一正则表达式对网页源码中去除 属性值所对应的代码段之外的代码段进行匹配;
第一获取子模块,被配置为在第一匹配模块的匹配结果为对应于第一正则 表达式的匹配结果为第一初始代码段时,获取第一正则表达式在第二版本中所 对应的第一迁移代码段;
第一替换子模块,被配置为使用第一迁移代码段替换第一初始代码段。
可选地,第一正则表达式包括用于匹配声明代码段的正则表达式,声明代 码段是用于声明网页源码的编程语言的版本的代码段。
可选地,该迁移模块,包括:
第二匹配子模块,被配置为通过预设的第二正则表达式对网页源码中属性 值所对应的代码段进行匹配;
迁移代码段生成子模块,被配置为在第二匹配子模块的匹配结果为对应于 第二正则表达式的匹配结果为属性值时,获取第二正则表达式在第二版本中所 对应的代码生成格式,根据属性值以及代码生成格式生成第二迁移代码段;
初始代码段确定子模块,被配置为确定网页源码中属性值所对应的第二初 始代码段;
第二替换子模块,被配置为使用第二迁移代码段替换第二初始代码段。
可选地,该第二正则表达式包括如下表达式中的至少一种:
用于匹配被第二版本遗弃的标签的正则表达式;
用于匹配被第二版本遗弃的属性的正则表达式;
用于匹配更新标签的正则表达式,更新标签为网页源码的各个标签中表达 方式与第二版本中的对应标签的表达方式不同的标签;
用于匹配未闭合的标签的正则表达式;
用于匹配大写的标签名的正则表达式;
用于匹配未被引号包含的属性的正则表达式。
可选地,该装置还包括:
信息获取模块,被配置为获取各个自定义正则表达式以及每个自定义正则 表达式所对应的代码生成格式,自定义正则表达式用于匹配网页源码中的自定 义格式的代码段;
源码匹配模块,被配置为通过各个自定义正则表达式对网页源码中自定义 格式的代码段进行匹配;
迁移代码段生成模块,被配置为对于任一的自定义正则表达式,若对应于 自定义正则表达式的匹配结果为属性值,则根据属性值以及自定义正则表达式 所对应的代码生成格式生成第三迁移代码段;
初始代码段确定模块,被配置为确定网页源码中对应于自定义正则表达式 的属性值的第三初始代码段;
代码段替换模块,被配置为使用第三迁移代码段替换第三初始代码段。
根据本公开实施例的第三方面,提供一种网页源码迁移装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,处理器被配置为:
接收迁移指令,迁移指令用于请求将目标网页的网页源码的编程语言由第 一版本迁移至第二版本;
获取目标网页的网页源码;
将网页源码的编程语言由第一版本自动迁移至第二版本。
本公开的实施例提供的技术方案可以包括以下有益效果:
通过在接收到迁移指令时,获取目标网页的网页源码,并将该网页源码的 编程语言由第一版本迁移至第二版本;解决了相关技术中需要开发人员使用 HTML5对网站的网页源码进行重新编写的问题;达到了可以提高网页源码的编 程语言的迁移效率的效果。同时,由于开发人员重新编写过程中很容易会出现 编写错误,所以上述网页源码迁移方法也提高了迁移过程中的准确率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能 限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明 的实施例,并于说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的一种网页源码迁移方法的流程图。
图2是根据另一示例性实施例示出的一种网页源码迁移方法的流程图。
图3A是根据再一示例性实施例示出的一种网页源码迁移方法的流程图。
图3B是根据再一示例性实施例示出的通过自定义正则表达式对网页源码进 行匹配进而实现网页源码的编程语言的迁移的流程图。
图4是根据一示例性实施例示出的一种网页源码迁移装置的框图。
图5A是根据另一示例性实施例示出的一种网页源码迁移装置的框图。
图5B是根据另一示例性实施例示出的迁移模块的一种框图。
图5C是根据另一示例性实施例示出的迁移模块的另一种框图。
图6是根据一示例性实施例示出的一种用于迁移网页源码的装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描 述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。 以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方 式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一 致的装置和方法的例子。
图1是根据一示例性实施例示出的一种网页源码迁移方法的流程图,如图1 所示,该网页源码迁移方法可以包括以下步骤。
在步骤101中,接收迁移指令,迁移指令用于请求将目标网页的网页源码 的编程语言由第一版本迁移至第二版本。
通常情况下,第一版本低于第二版本。当然第一版本也可以高于第二版本。
在步骤102中,获取目标网页的网页源码。
在步骤103中,将网页源码的编程语言由第一版本自动迁移至第二版本。
综上所述,本公开实施例中提供的网页源码迁移方法,通过在接收到迁移 指令时,获取目标网页的网页源码,并将该网页源码的编程语言由第一版本迁 移至第二版本;解决了相关技术中需要开发人员使用HTML5对网站的网页源码 进行重新编写的问题;达到了可以提高网页源码的编程语言的迁移效率的效果。 同时,由于开发人员重新编写过程中很容易会出现编写错误,所以上述网页源 码迁移方法也提高了迁移过程中的准确率。
在步骤103中,迁移终端可以通过如下两种可能的迁移方式来实现网页源 码的编程语言的迁移:
第一种,通过预设的第一正则表达式对网页源码中去除属性值所对应的代 码段之外的代码段进行匹配,根据匹配结果实现网页源码的编程语言的迁移。
第二种,通过预设的第二正则表达式对网页源码中属性值所对应的代码段 进行匹配,根据匹配结果实现网页源码的编程语言的迁移。
所以,下述将在两个实施例中对上述两种情况进行介绍。
图2是根据一示例性实施例示出的一种网页源码迁移方法的流程图,本实 施例以通过上述第一种实现方式来实现网页源码的迁移来举例说明。如图2所 示,该网页源码迁移方法可以包括以下步骤。
在步骤201中,接收迁移指令,迁移指令用于请求将目标网页的网页源码 的编程语言由第一版本迁移至第二版本。
当开发人员想要将某一网页的网页源码的编程语言由第一版本迁移至第二 版本时,开发人员可以在迁移终端中施加迁移指令,迁移终端相应的接收该迁 移指令。
通常情况下,第一版本低于第二版本。且第一版本可以为HTML4,第二版 本可以为HTML5。可选地,第一版本也可以高于第二版本,比如,第一版本为 HTML5,而第二版本为HTML4,本实施例对此并不做限定。
迁移终端是指用于实现网页源码的编程语言的迁移的终端。可选地,该终 端中可以运行有用于实现网页源码的编程语言的迁移的应用程序,本实施例对 此并不做限定。
在步骤202中,获取目标网页的网页源码。
当各个网页的网页源码存储在迁移终端中时,迁移终端可以直接读取存储 的目标网页的网页源码。迁移终端可以读取存放各个网页的HTML文件的存储 目录,根据存储目录读取目标网页的HTML文件。
当各个网页的网页源码存储在服务器中时,迁移终端可以发送请求获取目 标网页的网页源码的获取请求至服务器;服务器接收到获取请求之后查询并返 回目标网页的网页源码;迁移终端接收服务器返回的目标网页的网页源码。
在步骤203中,通过预设的第一正则表达式对网页源码中去除属性值所对 应的代码段之外的代码段进行匹配。
在迁移终端获取到目标网页的网页源码之后,迁移终端可以通过预设的第 一正则表达式对网页源码中去除属性值所对应的代码段之外的代码段进行匹 配。第一正则表达式包括用于匹配声明代码段的正则表达式。
比如,以第一版本为HTML4为例,迁移终端可以通过预设的第一正则表达 式‘<!DOCTYPE.*?/?>’对网页源码进行匹配。
声明代码段是用于声明网页源码的编程语言的版本的代码段。
比如,以该网页源码是使用第一版本的HTML4编写的网页源码来举例说 明,该网页源码中的声明代码段可以为‘<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">’,或者, ‘<!DOCTYPE HTML PUBLIC"-//W3C//DTD HTML 4.01Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">’,或者,‘<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">’。当然,该声明代码段还可能存在其 他的声明形式,本实施例对此并不做限定。
在步骤204中,若对应于第一正则表达式的匹配结果为第一初始代码段, 则获取第一正则表达式在第二版本中所对应的第一迁移代码段。
如果迁移终端通过第一正则表达式对网页源码进行匹配之后得到对应的匹 配结果,且该匹配结果为第一初始代码段,则迁移终端可以获取该第一正则表 达式在第二版本中所对应的第一迁移代码段。
迁移终端预存有第一正则表达式与该第一正则表达式在第二版本中所对应 的迁移代码段之间的对应关系,所以在迁移终端通过第一正则表达式匹配得到 的匹配结果为第一初始代码段时,迁移终端可以在该对应关系中查询第一正则 表达式所对应的迁移代码段,并将查询到的迁移代码段确定为第一迁移代码段。
比如,以第二版本为HTML5为例,迁移终端通过‘<!DOCTYPE.*?/?>’对网 页源码进行匹配之后,迁移终端匹配得到‘<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">’,此时迁 移终端可以在预存的对应关系中查询‘<!DOCTYPE.*?/?>’所对应的第一迁移代 码段,如查询得到‘<!DOCTYPE html>’。
在步骤205中,使用第一迁移代码段替换第一初始代码段。
迁移终端使用获取到的第一迁移代码段替换网页源码中的第一初始代码 段。
比如,在上述举例中,迁移终端可以使用‘<!DOCTYPE html>’替换网页源码 中的‘<!DOCTYPE HTML PUBLIC"-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">’。
需要说明的一点是,当第一版本为HTML5,第二版本为HTML4时,迁移 终端可以采用类似的方法进行网页源码的编程语言的迁移。
需要说明的另一点是,本实施例只是以通过第一正则表达式来匹配声明代 码段来举例说明,可选地,当网页源码中还存在其他不包含属性值的代码段时, 迁移终端可以采用类似的方法进行网页源码的编程语言的迁移,本实施例在此 不再赘述。
综上所述,本公开实施例中提供的网页源码迁移方法,通过在接收到迁移 指令时,获取目标网页的网页源码,并将该网页源码的编程语言由第一版本迁 移至第二版本;解决了相关技术中需要开发人员使用HTML5对网站的网页源码 进行重新编写的问题;达到了可以提高网页源码的编程语言的迁移效率的效果。 同时,由于开发人员重新编写过程中很容易会出现编写错误,所以上述网页源 码迁移方法也提高了迁移过程中的准确率。
本实施例可以直接使用第二版本中的第二迁移代码段来替换第一版本中的 第一初始代码段,中间无需开发人员进行编写工作,提高了网页源码的编程语 言的迁移效率,降低了开发人员的工作量。
图3A是根据一示例性实施例示出的一种网页源码迁移方法的流程图,本实 施例以通过上述第二种可能的实现方式来实现网页源码的编程语言的迁移来举 例说明。如图3A所示,该网页源码迁移方法可以包括以下步骤。
在步骤301中,接收迁移指令,迁移指令用于请求将目标网页的网页源码 的编程语言由第一版本迁移至第二版本。
当开发人员想要将某一网页的网页源码的编程语言由第一版本迁移至第二 版本时,开发人员可以在迁移终端中施加迁移指令,迁移终端相应的接收该迁 移指令。
通常情况下第一版本低于第二版本。且第一版本可以为HTML4,第二版本 可以为HTML5。可选地,第一版本也可以高于第二版本,比如,第一版本为 HTML5,而第二版本为HTML4,本实施例对此并不做限定。
迁移终端是指用于实现网页源码的编程语言的迁移的终端。可选地,该终 端中可以运行有用于实现网页源码的编程语言的迁移的应用程序,本实施例对 此并不做限定。
在步骤302中,获取目标网页的网页源码。
当各个网页的网页源码存储在迁移终端中时,迁移终端可以直接读取存储 的目标网页的网页源码。迁移终端可以读取存放各个网页的HTML文件的存储 目录,根据存储目录读取目标网页的HTML文件。
当各个网页的网页源码存储在服务器中时,迁移终端可以发送请求获取目 标网页的网页源码的获取请求至服务器;服务器接收到获取请求之后查询并返 回目标网页的网页源码;迁移终端接收服务器返回的目标网页的网页源码。
在步骤303中,通过预设的第二正则表达式对网页源码中属性值所对应的 代码段进行匹配。
在迁移终端获取到目标网页的网页源码之后,迁移终端可以通过预设的第 二正则表达式对网页源码中属性值所对应的代码段进行匹配。其中,第二正则 表达式包括如下表达式中的至少一种:
用于匹配被第二版本遗弃的标签的正则表达式;
用于匹配被第二版本遗弃的属性的正则表达式;
用于匹配更新标签的正则表达式,更新标s签为网页源码的各个标签中表达 方式与第二版本中的对应标签的表达方式不同的标签;
用于匹配未闭合的标签的正则表达式;
用于匹配大写的标签名的正则表达式;
用于匹配未被引号包含的属性的正则表达式。
可选地,以第一版本为HTML4且第二版本为HTML5来举例说明,该本步 骤可以包括:
(1)、当第二正则表达式包括用于匹配被第二版本遗弃的标签的正则表达 式时,通过用于匹配被第二版本遗弃的标签的正则表达式对网页源码进行匹配。
比如,第二正则表达式可以包括用于匹配HTML4的网页源码中被HTML5 遗弃的<basefont>标签的正则表达式,该第二正则表达式可以为 ‘<basefont(\s+(color=(.+?)|size=(\d+)|face=(.+?)))*\s*/?>’。
上述只是以第二正则表达式包括用于匹配被遗弃的<basefont>标签来举例 说明,可选地,第二正则表达式还可以包括用于匹配被遗弃的<big></big>、 <center></center>、<font></font>或者其他标签的正则表达式,本实施例对此并 不做限定。
(2)、当第二正则表达式包括用于匹配被第二版本遗弃的属性的正则表达 式时,通过用于匹配被第二版本遗弃的属性的正则表达式对网页源码进行匹配。
比如,第二正则表达式包括用于匹配HTML4的网页源码中被HTML5遗弃 的<body>的属性的正则表达式,该第二正则表达式可以为 ‘<body(\s+(link=(.+?)|vlink=(.+?)|text=(.+?)|alink=(.+?)))*\s*/?>’。
上述只是以第二正则表达式包括用于匹配<body>的遗弃属性来举例说明, 可选地,第二正则表达式还可以包括用于匹配被HTML5遗弃的align、border、 bgcolor或者其他属性,本实施例对此并不做限定。
(3)、当第二正则表达式包括用于匹配更新标签的正则表达式时,通过用 于匹配更新标签的正则表达式对网页源码进行匹配;更新标签为网页源码的各 个标签中表达方式与第二版本中的对应标签的表达方式不同的标签。
比如,HTML4中表示头部的标签可以包括如下几种:<div id="head">头部 </div>、<div id="hd">头部</div>、<div id="top">头部</div>、<div class="head"> 头部</div>、<div class="hd">头部</div>和<div class="top">头部</div>;而 HTML5中表示头部的标签为<header>头部</header>,两者表达方式有所区别, 所以第二正则表达式可以包括用于匹配上述几种用于表示头部的标签的 ‘<div.*?(id="head"|id="hd"|id="top"|class="head"|class="hd"|class="top").*?>.*?</di  v>’。
根据HTML4中标签的表达方式的不同,用于匹配该类标签的正则表达式也 可以设置为不同,本实施例对此并不做限定。且此类正则表达式是通过对已有 的大量网页的网页源码进行语义化分析,在统计得到表示同种语义的各种可能 的表达方式之后,针对各种可能的表达方式而设置的正则表达式。
(4)、当第二正则表达式包括用于匹配未闭合的标签的正则表达式时,通 过用于匹配未闭合的标签的正则表达式对网页源码进行匹配。
由于HTML5要求所有的标签必须闭合,而HTML4中可能会存在未闭合的 标签,所以迁移终端可以通过用于匹配网页源码中未闭合的标签的正则表达式 对网页源码进行匹配。
可选地,HTML5中的网页源码中有些标签为自闭合标签而有些标签为完全 闭合标签,所以针对上述两种类型的标签可以分别设置不同的正则表达式,本 实施例对此并不做限定。
(5)、当第二正则表达式包括用于匹配大写的标签名的正则表达式时,通 过用于匹配大写的标签名的正则表达式对网页源码进行匹配。
其中,第二正则表达式可以包括用于匹配所有标签名的正则表达式,或者, 包括用于匹配大写的标签名的正则表达式,根据不同的应用场景,第二正则表 达式可以设置为不同。
(6)、当第二正则表达式包括用于匹配未被引号包含的属性的正则表达式 时,通过用于匹配未被引号包含的属性的正则表达式对网页源码进行匹配。
第二正则表达式可以包括用于匹配各个标签的正则表达式。在迁移终端通 过上述正则表达式对网页源码进行匹配之后,迁移终端可以通过匹配得到的属 性名和属性值来判断属性值是否被引号包含。
需要说明的是,本实施例只是以第二正则表达式为上述几种来举例说明, 可选地,第二正则表达式还可以包括其他可能的实现方式,本实施例对此并不 做限定。
在步骤304中,若对应于第二正则表达式的匹配结果为属性值,则获取第 二正则表达式在第二版本中所对应的代码生成格式,根据属性值以及代码生成 格式生成第二迁移代码段。
在迁移终端通过第二正则表达式对网页源码进行匹配之后,当对应于第二 正则表达式的匹配结果为属性值时,迁移终端可以获取第二正则表达式在第二 版本中所对应的代码生成格式,然后根据匹配得到的属性值以及获取得到的代 码生成格式生成第二迁移代码段。
迁移终端中可以存储有各个第二正则表达式与各自对应的代码生成格式之 间的对应关系,所以,在迁移终端通过第二正则表达式对网页源码进行匹配之 后,当对应于该第二正则表达式的匹配结果为属性值时,迁移终端可以在预存 的对应关系中查询该第二正则表达式所对应的代码生成格式。
比如,以第二正则表达式为 ‘<basefont(\s+(color=(.+?)|size=(\d+)|face=(.+?)))*\s*/?>’,且网页源码中的 <basefont>为‘<basefont color="red"size="5"face="courier,serif"/>’为例,迁移终 端通过该正则表达式对网页源码进行匹配之后,迁移终端可以匹配得到属性值 ‘red’、‘5’以及‘courier,serif’。且迁移终端在对应关系中查询得到的该正则表 达式所对应的代码生成格式为:

则,迁移终端根据匹配得到的属性值以及上述代码生成格式可以生成如下 迁移代码段:

迁移终端将生成的迁移代码段确定为第二迁移代码段。
在步骤305中,确定网页源码中属性值所对应的第二初始代码段。
迁移终端还可以确定网页源码中属性值所对应的第二初始代码段。
比如,以属性值为‘red’、‘5’以及‘courier,serif’为例,迁移终端可以确定 得到属性值所对应的第二初始代码段为‘<basefont color="red"size="5" face="courier,serif"/>’。
在步骤306中,使用第二迁移代码段替换第二初始代码段。
迁移终端可以使用第二迁移代码段替换第二初始代码段。
比如,在上述举例中,迁移终端可以使用


来替换网页源码中的‘<basefont color="red"size="5"face="courier,serif"/>’。
综上所述,本公开实施例中提供的网页源码迁移方法,通过在接收到迁移 指令时,获取目标网页的网页源码,并将该网页源码的编程语言由第一版本迁 移至第二版本;解决了相关技术中需要开发人员使用HTML5对网站的网页源码 进行重新编写的问题;达到了可以提高网页源码的编程语言的迁移效率的效果。 同时,由于开发人员重新编写过程中很容易会出现编写错误,所以上述网页源 码迁移方法也提高了迁移过程中的准确率。
需要补充说明的一点是,上述实施例只是以分别使用预设的第一正则表达 式或者预设的第二正则表达式来实现网页源码的编程语言的迁移为例,可选地, 迁移终端还可以同时使用第一正则表达式和第二正则表达式来进行网页源码的 编程语言的迁移,本实施例对此并不做限定。并且,在迁移终端使用其中一个 正则表达式来进行迁移时,开发人员还可以通过手动修改的方式适应性的修改 网页源码中的其他代码段。比如,迁移终端通过图3A中的网页源码迁移方法进 行迁移,而通过接收开发人员手动修改的声明代码段的方式来迁移声明代码段, 本实施例对此并不做限定。
需要补充说明的另一点是,一些网页的网页源码中可能存在自定义格式的 代码段,此时,通过第一正则表达式或者第二正则表达式对网页源码的编程语 言进行迁移之后,可能还会存在未被迁移的代码段。为了对这些自定义格式的 代码段进行迁移,开发人员还可以根据目标网页的网页源码的具体内容而自定 义正则表达式,通过自定义的正则表达式来实现这些自定义格式的代码段的迁 移。所以,请参考图3B,上述网页源码迁移方法还可以包括:
在步骤307中,获取各个自定义正则表达式以及每个自定义正则表达式所 对应的代码生成格式,自定义正则表达式用于匹配网页源码中的自定义格式的 代码段。
迁移终端可以接收开发人员设置的自定义正则表达式,也可以从其他终端 中获取开发人员设置的自定义正则表达式。
同时,迁移终端还可以获取每个自定义正则表达式所对应的代码生成格式。 迁移终端可以接收开发人员为每个自定义正则表达式设置的代码生成格式,或 者从其他终端中获取每个自定义正则表达式所对应的代码生成格式。
在步骤308中,通过各个自定义正则表达式对网页源码中自定义格式的代 码段进行匹配。
在步骤309中,对于任一的自定义正则表达式,若对应于自定义正则表达 式的匹配结果为属性值,则根据属性值以及自定义正则表达式所对应的代码生 成格式生成第三迁移代码段。
在步骤310中,确定网页源码中对应于自定义正则表达式的属性值的第三 初始代码段。
在步骤311中,使用第三迁移代码段替换第三初始代码段。
其中步骤308至步骤311与上述实施例中的步骤303至步骤306类似,不 同的是,步骤308中使用开发人员自定义的正则表达式,而步骤303中使用迁 移终端预设的正则表达式,本实施例在此不再赘述。
需要说明的是,步骤307可以在上述各个实施例中的任意一个步骤执行, 且在步骤307在步骤203或者步骤303之前执行时,迁移终端可以优先执行步 骤308然后执行步骤203或者步骤303,本实施例对此并不做限定。
下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开 装置实施例中未披露的细节,请参照本公开方法实施例。
图4是根据一示例性实施例示出的一种网页源码迁移装置的框图,如图4 所示,该网页源码迁移装置可以包括但不限于:指令接收模块410、源码获取模 块420和迁移模块430。
指令接收模块410,被配置为接收迁移指令,迁移指令用于请求将目标网页 的网页源码的编程语言由第一版本迁移至第二版本;
源码获取模块420,被配置为获取目标网页的网页源码;
迁移模块430,被配置为将源码获取模块420获取到的网页源码的编程语言 由第一版本自动迁移至第二版本。
综上所述,本公开实施例中提供的网页源码迁移装置,通过在接收到迁移 指令时,获取目标网页的网页源码,并将该网页源码的编程语言由第一版本迁 移至第二版本;解决了相关技术中需要开发人员使用HTML5对网站的网页源码 进行重新编写的问题;达到了可以提高网页源码的编程语言的迁移效率的效果。 同时,由于开发人员重新编写过程中很容易会出现编写错误,所以上述网页源 码迁移方法也提高了迁移过程中的准确率。
图5A是根据一示例性实施例示出的一种网页源码迁移装置的框图,如图 5A所示,该网页源码迁移装置可以包括但不限于:指令接收模块510、源码获 取模块520和迁移模块530。
指令接收模块510,被配置为接收迁移指令,迁移指令用于请求将目标网页 的网页源码的编程语言由第一版本迁移至第二版本;
源码获取模块520,被配置为获取目标网页的网页源码;
迁移模块530,被配置为将源码获取模块520获取到的网页源码的编程语言 由第一版本自动迁移至第二版本。
可选地,请参考图5B,迁移模块530,包括:
第一匹配子模块531,被配置为通过预设的第一正则表达式对网页源码中去 除属性值所对应的代码段之外的代码段进行匹配;
第一获取子模块532,被配置为在第一匹配模块531的匹配结果为对应于第 一正则表达式的匹配结果为第一初始代码段时,获取第一正则表达式在第二版 本中所对应的第一迁移代码段;
第一替换子模块533,被配置为使用第一迁移代码段替换第一初始代码段。
可选地,第一正则表达式包括用于匹配声明代码段的正则表达式,声明代 码段是用于声明网页源码的编程语言的版本的代码段。
可选地,请参考图5C,迁移模块530,包括:
第二匹配子模块534,被配置为通过预设的第二正则表达式对网页源码中属 性值所对应的代码段进行匹配;
迁移代码段生成子模块535,被配置为在第二匹配子模块的匹配结果为对应 于第二正则表达式的匹配结果为属性值时,获取第二正则表达式在第二版本中 所对应的代码生成格式,根据属性值以及代码生成格式生成第二迁移代码段;
初始代码段确定子模块536,被配置为确定网页源码中属性值所对应的第二 初始代码段;
第二替换子模块537,被配置为使用第二迁移代码段替换第二初始代码段。
可选地,第二正则表达式包括如下表达式中的至少一种:
用于匹配被第二版本遗弃的标签的正则表达式;
用于匹配被第二版本遗弃的属性的正则表达式;
用于匹配更新标签的正则表达式,更新标签为网页源码的各个标签中表达 方式与第二版本中的对应标签的表达方式不同的标签;
用于匹配未闭合的标签的正则表达式;
用于匹配大写的标签名的正则表达式;
用于匹配未被引号包含的属性的正则表达式。
可选地,装置还包括:
信息获取模块540,被配置为获取各个自定义正则表达式以及每个自定义正 则表达式所对应的代码生成格式,自定义正则表达式用于匹配网页源码中的自 定义格式的代码段;
源码匹配模块550,被配置为通过各个自定义正则表达式对网页源码中自定 义格式的代码段进行匹配;
迁移代码段生成模块560,被配置为对于任一的自定义正则表达式,若对应 于自定义正则表达式的匹配结果为属性值,则根据属性值以及自定义正则表达 式所对应的代码生成格式生成第三迁移代码段;
初始代码段确定模块570,被配置为确定网页源码中对应于自定义正则表达 式的属性值的第三初始代码段;
代码段替换模块580,被配置为使用第三迁移代码段替换第三初始代码段。
综上所述,本公开实施例中提供的网页源码迁移装置,通过在接收到迁移 指令时,获取目标网页的网页源码,并将该网页源码的编程语言由第一版本迁 移至第二版本;解决了相关技术中需要开发人员使用HTML5对网站的网页源码 进行重新编写的问题;达到了可以提高网页源码的编程语言的迁移效率的效果。 同时,由于开发人员重新编写过程中很容易会出现编写错误,所以上述网页源 码迁移方法也提高了迁移过程中的准确率。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关 该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图6是根据一示例性实施例示出的一种用于迁移网页源码的装置600的框 图。例如,装置600可以被提供为一服务器或者终端。参照图6,装置600包括 处理组件622,其进一步包括一个或多个处理器,以及由存储器632所代表的存 储器资源,用于存储可由处理部件622执行的指令,例如应用程序。存储器632 中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。 此外,处理组件622被配置为执行指令,以执行上述信息获取方法。
装置600还可以包括一个电源组件626被配置为执行装置600的电源管理, 一个有线或无线网络接口650被配置为将装置600连接到网络,和一个输入输 出(I/O)接口658。装置600可以操作基于存储在存储器632的操作系统,例 如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结 构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的 权利要求来限制。

网页源码迁移方法和装置.pdf_第1页
第1页 / 共21页
网页源码迁移方法和装置.pdf_第2页
第2页 / 共21页
网页源码迁移方法和装置.pdf_第3页
第3页 / 共21页
点击查看更多>>
资源描述

《网页源码迁移方法和装置.pdf》由会员分享,可在线阅读,更多相关《网页源码迁移方法和装置.pdf(21页珍藏版)》请在专利查询网上搜索。

本公开揭示了一种网页源码迁移方法和装置,属于互联网技术领域。所述方法包括:接收迁移指令,所述迁移指令用于请求将目标网页的网页源码的编程语言由第一版本迁移至第二版本;获取所述目标网页的网页源码;将所述网页源码的编程语言由所述第一版本自动迁移至所述第二版本。解决了相关技术中需要开发人员使用HTML5对网站的网页源码进行重新编写的问题;达到了可以提高网页源码的编程语言的迁移效率的效果。。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1