首页 / 专利库 / 软件 / 通配符 / 一种URL转换模型的建立方法、装置及电子设备

一种URL转换模型的建立方法、装置及电子设备

阅读:591发布:2020-05-11

专利汇可以提供一种URL转换模型的建立方法、装置及电子设备专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种URL转换模型的建立方法、装置及 电子 设备。该建立方法包括:获取同一 网站 下主体内容相同的页面的URL对集合;对每个URL对中包括的PC URL和WAP URL进行分段,获取URL对的主域及URL分段信息并由此获得初始URL模型对,每个初始URL模型对包括初始PC模型和初始WAP模型;基于URL主域和URL分段信息中PC URL包括的分段数对每个初始URL模型对进行分类,并基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树,其中,模型树中每个父结点中的PC模型包含子结点的PC模型,每个结点中包含一对PC模型和WAP模型及对应的URL样本,避免了转换模型之间关系不清导致的匹配错误,从而解决 现有技术 中URL转换模型匹配错误率较高的技术问题,降低URL模型匹配错率。,下面是一种URL转换模型的建立方法、装置及电子设备专利的具体信息内容。

1.一种URL转换模型的建立方法,其特征在于,所述方法包括:
获取同一网站下主体内容相同的页面的URL对集合,每个URL对包含PC URL和WAP URL;
对所述每个URL对中包括的PC URL和WAP URL进行分段,获取所述URL对的主域及URL分段信息,并基于所述URL对的主域和所述URL分段信息,获得初始URL模型对,每个初始URL模型对包括初始PC模型和初始WAP模型;所述URL分段信息包括:PC URL包括的分段数;
基于每个URL对的主域和PC URL包括的分段数对所述URL对集合中每个URL对对应的初始URL模型对进行分类,并基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树,其中,所述模型树中每个父结点中的PC模型包含子结点的PC模型,每个结点中包含一对PC模型和WAP模型及对应的URL样本。
2.如权利要求1所述的方法,其特征在于,所述基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树,包括:
基于每类初始URL模型对中各个初始PC模型之间的包含关系生成或更新模型树的结点;和/或,
基于每类初始URL模型对中各个初始WAP模型,按序消解初始URL模型对中的通配符,基于消解后的初始URL模型对生成或更新模型树的结点;
其中,所述模型树的每个结点的PC模型包含的通配符数量在第一阈值范围内,及所述模型树的每个结点中包含的URL样本数量在第二阈值范围内。
3.如权利要求2所述的方法,其特征在于,在生成所述模型树之后,所述方法还包括:
遍历所述模型树的每个结点中的所有PC URL或WAP URL,判断是否存在目标结点中所有PC URL或所有WAP URL的目标分段对应的样本值相同;
若存在,将所述目标结点中的PC模型或者WAP模型中的目标分段的通配符还原为所述样本值。
4.如权利要求2所述的方法,其特征在于,所述生成或更新模型树的结点,包括:
将每个URL模型对及对应的URL对作为输入数据,对每个输入数据进行处理,包括:
判断当前输入数据中URL模型对的当前PC URL分段数下是否有根结点并获得第一判断结果,及判断所述当前输入数据中的PC模型与所述当前PC URL分段数下任一PC模型是否存在包含关系并获得第二判断结果;
若所述第一判断结果为否或者所述第二判断结果为否,新建一个模型树,并将当前输入数据中的URL模型对作为新建模型树的根结点的结点模型及将当前输入数据中的URL对作为URL样本写入所述根结点中。
5.如权利要求4所述的方法,其特征在于,若所述第一判断结果为是且所述第二判断结果为是,所述方法还包括:
若当前输入数据的PC模型与参考PC模型相同,则:
判断当前输入数据的WAP模型与所述参考PC模型对应的WAP模型是否相同,其中,所述参考PC模型为当前PC URL分段数下与当前输入数据的PC模型存在包含关系的PC模型;
若当前输入数据的WAP模型与所述参考PC模型对应的WAP模型相同,将当前输入数据中的PC URL和WAP URL添加到所述参考PC模型对应的URL样本中;
若当前输入数据的WAP模型与所述参考PC模型对应的WAP模型不相同,基于所述参考PC模型所在结点内的所有URL样本和当前输入数据中的URL对生成第二URL模型对,基于所述第二URL对生成所述参考PC模型所在结点的子结点。
6.如权利要求4所述的方法,其特征在于,若所述第一判断结果为是且所述第二判断结果为是,所述方法还包括:
若当前输入数据的PC模型与参考PC模型不相同且包含于所述参考PC模型,则,在所述参考PC模型所在结点下,建立一个新的模型树结点,并将所述当前输入数据写入新的模型树结点中,其中,所述参考PC模型为当前PC URL分段数下与当前输入数据的PC模型存在包含关系的PC模型。
7.如权利要求4所述的方法,其特征在于,若所述第一判断结果为是且所述第二判断结果为是,所述方法还包括:
若当前输入数据的PC模型与参考PC模型不相同且包含所述参考PC模型,则,在所述参考PC模型所在结点上,建立一个新的模型树结点,将所述当前输入数据中的URL模型对写入新的模型树结点中,其中,所述参考PC模型为当前PC URL分段数下与当前输入数据的PC模型存在包含关系的PC模型;
将所述当前输入数据中的PC URL和WAP URL写入新的模型树结点的URL样本中或者新的模型树结点的子结点的URL样本中。
8.一种URL转换模型的建立装置,其特征在于,所述装置包括:
获取单元,用于获取同一网站下主体内容相同的页面的URL对集合,每个URL对包含PC URL和WAP URL;
分段单元,用于对所述每个URL对中包括的PC URL和WAP URL进行分段,获取所述URL对的主域及URL分段信息,并基于所述URL对的主域和所述URL分段信息,获得初始URL模型对,每个初始URL模型对包括初始PC模型和初始WAP模型;所述URL分段信息包括:PC URL包括的分段数;
模型树生成单元,用于基于每个URL对的主域和PC URL包括的分段数对所述URL对集合中每个URL对对应的初始URL模型对进行分类,并基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树,其中,所述模型树中每个父结点中的PC模型包含子结点的PC模型,每个结点中包含一对PC模型和WAP模型及对应的URL样本。
9.一种电子设备,其特征在于,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
获取同一网站下主体内容相同的页面的URL对集合,每个URL对包含PC URL和WAP URL;
对所述每个URL对中包括的PC URL和WAP URL进行分段,获取所述URL对的主域及URL分段信息,并基于所述URL对的主域和所述URL分段信息,获得初始URL模型对,每个初始URL模型对包括初始PC模型和初始WAP模型;所述URL分段信息包括:PC URL包括的分段数;
基于每个URL对的主域和PC URL包括的分段数对所述URL对集合中每个URL对对应的初始URL模型对进行分类,并基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树,其中,所述模型树中每个父结点中的PC模型包含子结点的PC模型,每个结点中包含一对PC模型和WAP模型及对应的URL样本。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现以下步骤:
获取同一网站下主体内容相同的页面的URL对集合,每个URL对包含PC URL和WAP URL;
对所述每个URL对中包括的PC URL和WAP URL进行分段,获取所述URL对的主域及URL分段信息,并基于所述URL对的主域和所述URL分段信息,获得初始URL模型对,每个初始URL模型对包括初始PC模型和初始WAP模型;所述URL分段信息包括:PC URL包括的分段数;
基于每个URL对的主域和PC URL包括的分段数对所述URL对集合中每个URL对对应的初始URL模型对进行分类,并基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树,其中,所述模型树中每个父结点中的PC模型包含子结点的PC模型,每个结点中包含一对PC模型和WAP模型及对应的URL样本。

说明书全文

一种URL转换模型的建立方法、装置及电子设备

技术领域

[0001] 本发明涉及软件技术领域,特别涉及一种URL转换模型的建立方法、装置及电子设备。

背景技术

[0002] 随着网络信息技术的不断发展,网站数据量急剧增多,同一网站针对相同主体内容常常会提供两个页面来展示,一个页面适用于PC(Personal Computer,个人电脑)终端等宽屏浏览,其URL(Uniform Resource Locator,统一资源定位符)被称为PC URL;另一个页面适用于采用WAP(Wireless Application Protocol,无线应用通讯协议)协议的无线终端等小尺寸屏幕的浏览,其URL被称为WAP URL。
[0003] 目前,由同一页面的URL对包含PC URL和WAP URL,获取URL转换规则的方法是将URL按特殊字符分割,逆序尝试通配各分段,将相同且满足阈值的分段合并生成PC Pattern和WAP Pattern。各个PC Pattern和WAP Pattern即转换规则之间的关系不清,容易出现模型匹配错误,导致URL转换错误,即现有技术中URL转换模型存在匹配错误率较高的技术问题。

发明内容

[0004] 本发明实施例提供一种URL转换模型的建立方法、装置及电子设备,用于解决现有技术中URL转换模型存在的URL匹配错误率较高的技术问题,降低URL匹配错率。
[0005] 本发明实施例提供一种URL转换模型的建立方法,该方法包括:
[0006] 获取同一网站下主体内容相同的页面的URL对集合,每个URL对包含PC URL和WAP URL;
[0007] 对所述每个URL对中包括的PC URL和WAP URL进行分段,获取所述URL对的主域及URL分段信息,并基于所述URL对的主域和所述URL分段信息,获得初始URL模型对,每个初始URL模型对包括初始PC模型和初始WAP模型;所述URL分段信息包括:PC URL包括的分段数;
[0008] 基于每个URL对的主域和PC URL包括的分段数对所述URL对集合中每个URL对对应的初始URL模型对进行分类,并基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树,其中,所述模型树中每个父结点中的PC模型包含子结点的PC模型,每个结点中包含一对PC模型和WAP模型及对应的URL样本。
[0009] 可选的,所述基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树,包括:
[0010] 基于每类初始URL模型对中各个初始PC模型之间的包含关系生成或更新模型树的结点;和/或,
[0011] 基于每类初始URL模型对中各个初始WAP模型,按序消解初始URL模型对中的通配符,基于消解后的初始URL模型对生成或更新模型树的结点;
[0012] 其中,所述模型树的每个结点的PC模型包含的通配符数量在第一阈值范围内,及所述模型树的每个结点中包含的URL样本数量在第二阈值范围内。
[0013] 可选的,在生成所述模型树之后,所述方法还包括:
[0014] 遍历所述模型树的每个结点中的所有PC URL或WAP URL,判断是否存在目标结点中所有PC URL或所有WAP URL的目标分段对应的样本值相同;
[0015] 若存在,将所述目标结点中的PC模型或者WAP模型中的目标分段的通配符还原为所述样本值。
[0016] 可选的,所述生成或更新模型树的结点,包括:
[0017] 将每个URL模型对及对应的URL对作为输入数据,对每个输入数据进行处理,包括:
[0018] 判断当前输入数据中URL模型对的当前PC URL分段数下是否有根结点并获得第一判断结果,及判断所述当前输入数据中的PC模型与所述当前PC URL分段数下任一PC模型是否存在包含关系并获得第二判断结果;
[0019] 若所述第一判断结果为否或者所述第二判断结果为否,新建一个模型树,并将当前输入数据中的URL模型对作为新建模型树的根结点的结点模型及将当前输入数据中的URL对作为URL样本写入所述根结点中。
[0020] 可选的,若所述第一判断结果为是且所述第二判断结果为是,所述方法还包括:
[0021] 若当前输入数据的PC模型与参考PC模型相同,则:
[0022] 判断当前输入数据的WAP模型与所述参考PC模型对应的WAP模型是否相同,其中,所述参考PC模型为当前PC URL分段数下与当前输入数据的PC模型存在包含关系的PC模型;
[0023] 若当前输入数据的WAP模型与所述参考PC模型对应的WAP模型相同,将当前输入数据中的PC URL和WAP URL添加到所述参考PC模型对应的URL样本中;
[0024] 若当前输入数据的WAP模型与所述参考PC模型对应的WAP模型不相同,基于所述参考PC模型所在结点内的所有URL样本和当前输入数据中的URL对生成第二URL模型对,基于所述第二URL对生成所述参考PC模型所在结点的子结点。
[0025] 可选的,若所述第一判断结果为是且所述第二判断结果为是,所述方法还包括:
[0026] 若当前输入数据的PC模型与参考PC模型不相同且包含于所述参考PC模型,则,[0027] 在所述参考PC模型所在结点下,建立一个新的模型树结点,并将所述当前输入数据写入新的模型树结点中,其中,所述参考PC模型为当前PC URL分段数下与当前输入数据的PC模型存在包含关系的PC模型。
[0028] 可选的,若所述第一判断结果为是且所述第二判断结果为是,所述方法还包括:
[0029] 若当前输入数据的PC模型与参考PC模型不相同且包含所述参考PC模型,则,[0030] 在所述参考PC模型所在结点上,建立一个新的模型树结点,将所述当前输入数据中的URL模型对写入新的模型树结点中,其中,所述参考PC模型为当前PC URL分段数下与当前输入数据的PC模型存在包含关系的PC模型;
[0031] 将所述当前输入数据中的PC URL和WAP URL写入新的模型树结点的URL样本中或者新的模型树结点的子结点的URL样本中。
[0032] 可选的,在基于每类URL模型对中各个PC模型之间的包含关系生成模型树之后,所述方法还包括:
[0033] 遍历模型树的结点,获取URL样本不为空的结点并生成预设格式的URL转换文件,其中生成所述预设格式的URL转换文件时,URL模型对按照所在模型树中的结点深度逆序排列,使得结点深度大的模型优先被匹配。
[0034] 可选的,所述基于所述URL对的主域和所述URL分段信息,获得初始URL模型对,包括:
[0035] 基于所述URL分段信息包括的分段的内容和分段的类型,对所述URL对包括的PC URL和WAP URL进行通配,基于所述URL对的主域和通配结果获得初始URL模型对;所述URL分段信息包括:URL包括的分段数、每个分段的编号、分段的内容、分段在URL中的位置以及分段的类型;
[0036] 所述对所述URL对包括的PC URL和WAP URL进行通配包括:
[0037] 结合所述URL分段信息,将PC URL的分段信息和WAP URL的分段信息进行比对,确定内容相同的分段,将PC URL和WAP URL中,所述内容相同的分段用相应的通配符进行替换;并且,
[0038] 将所述URL对中包含的PC URL中分段类型为预设类型的分段用相应的通配符进行替换。
[0039] 可选的,对所述每个URL对中包括的PC URL和WAP URL进行分段,包括:
[0040] 基于预设的分段字符对每个URL对中包括的PC URL和WAP URL主域之外的字符进行分段,其中,若PC URL和WAP URL除主域之外存在数字或字母相同但所述分段字符不同的内容,采用相同的分段方式进行分段;
[0041] 记录每个分段的内容、该分段在URL中的位置以及该分段的类型,分别得到PC URL的分段信息和WAP URL的分段信息。
[0042] 本发明实施还提供一种URL转换模型的建立装置,所述装置包括:
[0043] 获取单元,用于获取同一网站下主体内容相同的页面的URL对集合,每个URL对包含PC URL和WAP URL;
[0044] 分段单元,用于对所述每个URL对中包括的PC URL和WAP URL进行分段,获取所述URL对的主域及URL分段信息,并基于所述URL对的主域和所述URL分段信息,获得初始URL模型对,每个初始URL模型对包括初始PC模型和初始WAP模型;所述URL分段信息包括:PC URL包括的分段数;
[0045] 模型树生成单元,用于基于每个URL对的主域和PC URL包括的分段数对所述URL对集合中每个URL对对应的初始URL模型对进行分类,并基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树,其中,所述模型树中每个父结点中的PC模型包含子结点的PC模型,每个结点中包含一对PC模型和WAP模型及对应的URL样本。
[0046] 可选的,所述模型树生成单元还用于:
[0047] 基于每类初始URL模型对中各个初始PC模型之间的包含关系生成或更新模型树的结点;和/或,
[0048] 基于每类初始URL模型对中各个初始WAP模型,按序消解初始URL模型对中的通配符,基于消解后的初始URL模型对生成或更新模型树的结点;
[0049] 其中,所述模型树的每个结点的PC模型包含的通配符数量在第一阈值范围内,及所述模型树的每个结点中包含的URL样本数量在第二阈值范围内。
[0050] 可选的,所述装置还包括:
[0051] 还原单元,用于在生成所述模型树之后,遍历所述模型树的每个结点中的所有PC URL或WAP URL,判断是否存在目标结点中所有PC URL或所有WAP URL的目标分段对应的样本值相同;若存在,将所述目标结点中的PC模型或者WAP模型中的目标分段的通配符还原为所述样本值。
[0052] 可选的,所述模型树生成单元,包括:
[0053] 输入模,用于将每个URL模型对及对应的URL对作为输入数据输入判断模块;
[0054] 所述判断模块用于对每个输入数据进行处理,包括:
[0055] 判断当前输入数据中URL模型对的当前PC URL分段数下是否有根结点并获得第一判断结果,及判断所述当前输入数据中的PC模型与所述当前PC URL分段数下任一PC模型是否存在包含关系并获得第二判断结果;
[0056] 编辑模块,用于若所述第一判断结果为否或者所述第二判断结果为否,新建一个模型树,并将当前输入数据中的URL模型对作为新建模型树的根结点的结点模型及将当前输入数据中的URL对作为URL样本写入所述根结点中。
[0057] 可选的,若所述第一判断结果为是且所述第二判断结果为是,所述判断模块还用于:
[0058] 若当前输入数据的PC模型与参考PC模型相同,则:判断当前输入数据的WAP模型与所述参考PC模型对应的WAP模型是否相同,其中,所述参考PC模型为当前PC URL分段数下与当前输入数据的PC模型存在包含关系的PC模型;
[0059] 所述编辑模块还用于:若当前输入数据的WAP模型与所述参考PC模型对应的WAP模型相同,将当前输入数据中的PC URL和WAP URL添加到所述参考PC模型对应的URL样本中;
[0060] 所述编辑模块还用于:若当前输入数据的WAP模型与所述参考PC模型对应的WAP模型不相同,基于所述参考PC模型所在结点内的所有URL样本和当前输入数据中的URL对生成第二URL模型对,基于所述第二URL对生成所述参考PC模型所在结点的子结点。
[0061] 可选的,若所述第一判断结果为是且所述第二判断结果为是,且当前输入数据的PC模型与参考PC模型不相同且包含于所述参考PC模型,所述编辑模块还用于:
[0062] 在所述参考PC模型所在结点下,建立一个新的模型树结点,并将所述当前输入数据写入新的模型树结点中,其中,所述参考PC模型为当前PC URL分段数下与当前输入数据的PC模型存在包含关系的PC模型。
[0063] 可选的,若所述第一判断结果为是且所述第二判断结果为是,且,当前输入数据的PC模型与参考PC模型不相同且包含所述参考PC模型,所述编辑模块还用于:
[0064] 在所述参考PC模型所在结点上,建立一个新的模型树结点,将所述当前输入数据中的URL模型对写入新的模型树结点中,其中,所述参考PC模型为当前PC URL分段数下与当前输入数据的PC模型存在包含关系的PC模型;
[0065] 将所述当前输入数据中的PC URL和WAP URL写入新的模型树结点的URL样本中或者新的模型树结点的子结点的URL样本中。
[0066] 可选的,所述装置还包括:
[0067] 转换单元,用于在基于每类URL模型对中各个PC模型之间的包含关系生成模型树之后,遍历模型树的结点,获取URL样本不为空的结点并生成预设格式的URL转换文件,其中生成所述预设格式的URL转换文件时,URL模型对按照所在模型树中的结点深度逆序排列,使得结点深度大的模型优先被匹配。
[0068] 可选的,所述分段单元还用于:
[0069] 基于所述URL分段信息包括的分段的内容和分段的类型,对所述URL对包括的PC URL和WAP URL进行通配,基于所述URL对的主域和通配结果获得初始URL模型对;所述URL分段信息包括:URL包括的分段数、每个分段的编号、分段的内容、分段在URL中的位置以及分段的类型;
[0070] 所述对所述URL对包括的PC URL和WAP URL进行通配包括:
[0071] 结合所述URL分段信息,将PC URL的分段信息和WAP URL的分段信息进行比对,确定内容相同的分段,将PC URL和WAP URL中,所述内容相同的分段用相应的通配符进行替换;并且,
[0072] 将所述URL对中包含的PC URL中分段类型为预设类型的分段用相应的通配符进行替换。
[0073] 可选的,所述分段单元还用于:
[0074] 基于预设的分段字符对每个URL对中包括的PC URL和WAP URL主域之外的字符进行分段,其中,若PC URL和WAP URL除主域之外存在数字或字母相同但所述分段字符不同的内容,采用相同的分段方式进行分段;
[0075] 记录每个分段的内容、该分段在URL中的位置以及该分段的类型,分别得到PC URL的分段信息和WAP URL的分段信息。
[0076] 本发明实施例还提供一种电子设备,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
[0077] 获取同一网站下主体内容相同的页面的URL对集合,每个URL对包含PC URL和WAP URL;
[0078] 对所述每个URL对中包括的PC URL和WAP URL进行分段,获取所述URL对的主域及URL分段信息,并基于所述URL对的主域和所述URL分段信息,获得初始URL模型对,每个初始URL模型对包括初始PC模型和初始WAP模型;所述URL分段信息包括:PC URL包括的分段数;
[0079] 基于每个URL对的主域和PC URL包括的分段数对所述URL对集合中每个URL对对应的初始URL模型对进行分类,并基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树,其中,所述模型树中每个父结点中的PC模型包含子结点的PC模型,每个结点中包含一对PC模型和WAP模型及对应的URL样本。
[0080] 本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:
[0081] 获取同一网站下主体内容相同的页面的URL对集合,每个URL对包含PC URL和WAP URL;
[0082] 对所述每个URL对中包括的PC URL和WAP URL进行分段,获取所述URL对的主域及URL分段信息,并基于所述URL对的主域和所述URL分段信息,获得初始URL模型对,每个初始URL模型对包括初始PC模型和初始WAP模型;所述URL分段信息包括:PC URL包括的分段数;
[0083] 基于每个URL对的主域和PC URL包括的分段数对所述URL对集合中每个URL对对应的初始URL模型对进行分类,并基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树,其中,所述模型树中每个父结点中的PC模型包含子结点的PC模型,每个结点中包含一对PC模型和WAP模型及对应的URL样本。
[0084] 本申请实施例中的上述一个或多个技术方案,至少具有如下技术效果:
[0085] 本申请实施例提供一种URL转换模型的建立方法,获取主体内容相同的页面的URL对集合,每个URL对包含PC URL和WAP URL;对所述每个URL对中包括的PC URL和WAP URL进行分段,获取URL对的主域及URL分段信息,并基于URL对的主域和URL分段信息,获得初始URL模型对包括初始PC模型和初始WAP模型;URL分段信息包括:PC URL包括的分段数;基于URL主域和PC URL包括的分段数对每个初始URL模型对进行分类,并基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树,所述模型树中每个父结点中的PC模型包含子结点的PC模型,每个结点中包含一对PC模型和WAP模型及对应的URL样本,即通过树型结构使得模型树中的每个PC模型之间的包含关系清楚明了,在URL模型匹配时可以根据该包含关系匹配到正确的模型以进行URL转换,从而解决了现有技术中URL转换时模型匹配错误率较高的技术问题,降低了转换模型匹配错率,提高了URL转换的准确性。附图说明
[0086] 图1为本申请实施例提供的一种URL转换模型的建立方法的流程图
[0087] 图2为本申请实施例提供的一种URL转换模型的建立装置的示意图;
[0088] 图3为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

[0089] 在本申请实施例提供的技术方案中,提供一种URL转换模型的建立方法,根据PC模型之间的包含关系建立树形结构的模型树,使得各个URL转换规则之间的包含关系清楚明了,以根据该包含关系匹配到正确的模型进行URL转换,从而解决现有技术中URL转换模型匹配错误率较高的技术问题,降低URL模型匹配错误率。
[0090] 下面结合附图对本申请实施例技术方案的主要实现原理、具体实施方式及其对应能够达到的有益效果进行详细的阐述。
[0091] 实施例
[0092] 请参考图1,本申请实施例提供一种URL转换模型的建立方法,该方法包括:
[0093] S10:获取同一网站下主体内容相同的页面的URL对集合,每个URL对包含PC URL和WAP URL;
[0094] S20:对每个URL对中包括的PC URL和WAP URL进行分段,获取URL对的主域及URL分段信息,并基于URL对的主域和URL分段信息,获得初始URL模型对,每个初始URL模型对包括初始PC模型和初始WAP模型;URL分段信息包括:PC URL包括的分段数;
[0095] S30:基于URL主域和PC URL包括的分段数对URL对集合中每个URL对对应的初始URL模型对进行分类,并基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树,其中,所述模型树中每个父结点中的PC模型包含子结点的PC模型,每个结点中包含一对PC模型和WAP模型及对应的URL样本。
[0096] 在具体实施过程中,S10可以通过挖掘同一网站下相同主体内容页面的PC URL和WAP URL获取URL对,例如:
[0097] http://example.com/news/2017-09-30/1A862CECA130626B_all.html
[0098] http://3g.example.com/news/2017-09-30/1A862CECA130626B.html
[0099] 这两个URL对应的两个页面都是同一网站下展示相同的主体内容的页面,两个页面的样式可能不同,第一条PC URL适用于PC电脑等宽屏浏览,第二条WAP URL适用于无线终端等小尺寸屏幕浏览。本实施例为了获取PC URL与WAP URL之间进行转换的通用规则,包括:从PC URL转换为WAP URL的通用规则和从WAP URL转换为PC URL的通用规则,S10需要挖掘获得一批URL对即URL对集合,从中提取通用转换规则即转换模型。
[0100] 针对获取到的URL对集合,执行S20进行分段并生成初始模型Pattern,具体的,步骤S20可以包括S21和S22:
[0101] S21、针对每个URL对,将该URL对包括的PC URL和WAP URL分别分段,获取该URL对的主域及URL分段信息。
[0102] 具体的,基于预设的分段字符对每个URL对中包括的PC URL和WAP URL主域之外的字符进行分段,其中,若PC URL和WAP URL除主域之外存在数字或字母相同但所述分段字符不同的内容,采用相同的分段方式进行分段;记录每个分段的内容、该分段在URL中的位置以及该分段的类型,分别得到PC URL的分段信息和WAP URL的分段信息。
[0103] 具体的,对每个URL除HTTP协议和主域名以外的部分,按“/、-、_、.、,、?、=、|、:、&、~”等特殊字符即预设的分段字符,将URL切分成独立的分段;从URL尾部向头部,对每一段依次编号,例如可以为0,1,2…等;记录每一分段的类型和该分段在URL中的位置(包括起始位置和/或中止位置),分段类型可以根据分段内的字符组成划分为数字类型和字母类型,其中,字母类型可以包含纯字母、及数字和字母的组合。
[0104] 即为,对每个URL对包括的PC URL和WAP URL分别进行分段,分别得到PC URL的分段信息和WAP URL的分段信息;每个URL的分段信息可以包括:该URL包括的每个分段的编号、该分段的内容、该分段在URL中的位置以及该分段的类型。
[0105] 例如对上例中的URL对,获取得到URL主域为example.com,分别对PC URL和WAP URL进行分段如下:PC URL:
[0106] http://example.com/news/2017-09-30/1A862CECA130626B_all.html
[0107] {index:0,segment:html,start:54,type:word}
[0108] {index:1,segment:all,start:50,type:word}
[0109] {index:2,segment:1A862CECA130626B,start:33,type:word}
[0110] {index:3,segment:30,start:30,type:decimal}
[0111] {index:4,segment:09,start:27,type:decimal}
[0112] {index:5,segment:2017,start:22,type:decimal}
[0113] {index:6,segment:news,start:17,type:word}
[0114] WAP URL:
[0115] http://3g.example.com/news/2017-09-30/1A862CECA130626B.html
[0116] {index:0,segment:html,start:53,type:words}
[0117] {index:1,segment:1A862CECA130626B,start:36,type:words}
[0118] {index:2,segment:30,start:33,type:decimal}
[0119] {index:3,segment:09,start:30,type:decimal}
[0120] {index:4,segment:2017,start:25,type:decimal}
[0121] {index:5,segment:news,start:20,type:word}
[0122] {index:6,segment:3g,start:7,type:word}
[0123] 其中,在进行分段时,可以对每个URL对中的PC URL和WAP URL进行匹配,若两个URL除主域之外存在数字或字母相同但分段字符不同的内容,采用相同的分段方式进行分段,使得PC URL与WAP URL的分段能够尽可能的匹配,进而使生成的模型更为准确。例如:若PC URL中包含内容“2017-09-30”,而WAP URL中包含内容“20170930”,这两个内容之间仅分段字符“-”不同,那么对该内容进行分段时可以采用相同的方式,如将“2017-09-30”分段为“2017”-“09”-“30”,那么将“20170930”分段为“2017”“09”“30”。
[0124] S22、基于URL对的主域和URL分段信息,生成初始URL模型对;其中,初始URL模型对包括初始PC模型和初始WAP模型。
[0125] 结合URL分段信息,将PC URL的分段信息和WAP URL的分段信息进行比对,确定内容相同的分段,并将PC URL和WAP URL中,该内容相同的分段用相应的通配符进行替换;并且,将PC URL中出现的预设类型的分段用通配符予以替换,基于URL对的主域和通配结果,分别得到初始PC模型和初始WAP模型;据此生成初始URL模型对。
[0126] 其中,预设类型的分段如数字分段;对于预设类型的分段,即使该分段未出现在WAP URL中,仅出现在PC URL中,也将该分段用通配符替换。
[0127] 例如:对于S21中得到的分段信息,通过比对可见,PC URL和WAP URL中存在如下内容相同的分段:“news”、“2017”“09”“30”“1A862CECA130626B”、“html”,针对每个内容相同的分段,采用相应的通配符进行替换;并且PC URL中没有WAP URL中未出现的数字分段,即不包括预设分段;替换后分别得到初始PC模型和初始WAP模型,生成初始URL模型对如下:
[0128] 初始PC模型(即PC Pattern):
[0129] http://example.com/{6_word}/{5_decimal}-{4_decimal}-{3_decimal}/{2_wor d}_all.{0_word}
[0130] 初始WAP模型(即WAP Pattern):
[0131] http://3g.example.com/{6_word}/{5_decimal}-{4_decimal}-{3_decimal}/{2_word}.{0_word}
[0132] 在获得初始URL模型对之后,执行S30生成模型树。
[0133] 具体的,可以先基于每个URL对的主域和PC URL分段数,对初始URL模型对进行分类,即以“URL对的主域+PC URL分段数”为key,将URL对主域相同、PC URL分段数相同的初始URL模型对分为一类。当批量处理海量URL对时,放在一起处理将会耗费巨大的存储以及计算资源,利用分治的思想,按“URL对的主域名+PC URL的分段数”将总体数据集分成若干子数据集,能较好的将可能存在包含关系的规则即模型聚合处理,而不同类别之间的规则基本不会出现互相包含的情形,从而可以控制模型Pattern根结点的数量,避免大量规则的比较增加开销,同时,也适用于map-reduce等并行处理的系统中,提高效率。
[0134] 然后,基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树。其中,模型树中每个父结点中的PC模型包含子结点的PC模型,每个结点中包含一对PC模型和WAP模型及对应的URL样本。模型树的父结点和子节点之间PC模型可以仅差一个通配符,当然,也可以相差两个或以上的通配符,但是为了精准的获得模型之间关系,本实施例采用父子结点之间仅相差一个通配符的形式来建立模型树。父结点与子结点之间的距离可以通过相差的通配符数量来衡量。
[0135] 步骤S30生成模型树时,可以基于每类初始URL模型对中各个初始PC模型之间的包含关系生成或更新模型树的结点;和/或,基于每类初始URL模型对中各个初始WAP模型,按序消解初始URL模型对中的通配符,基于消解后的初始URL模型对生成或更新模型树的结点。在生成模型树的过程中,为了避免模型树过于庞大,本实施例还可以设置如下限制条件:
[0136] Constraint 1:模型树的每个结点的PC模型包含的通配符数量在第一阈值范围内;例如第一阈值范围为0~25,如树中任一节点中的URL Pattern中最多只能有25个通配符,即树的深度最大为25;
[0137] Constraint 2:模型树的每个结点中包含的URL样本数量在第二阈值范围内,或者模型树的一个结点下的子结点最多不超过N个;其中,第二阈值范围可以为4.5~5.5之间,N的参考值可以为20~30,即限制了每一颗模型树都不是1-to-1的映射,避免资源浪费。
[0138] 步骤S30所述的基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树,在具体执行时,可以循环处理每个URL对及其对应的初始URL模型对。具体的,将每个URL模型对及对应的URL对作为输入数据,如{PC Pattern,WAP Pattern,PC URL,WAP URL},其中PC Pattern的初始值即为S20获得的初始PC模型,WAP Pattern的初始值即为S20获得的初始WAP模型,对每个输入数据进行处理。
[0139] 具体的,以“每个URL对的主域+PC URL的分段数”为key,每个key下的容器存储若干Pattern树根结点,每个根结点对应一棵Pattern树。输入数据输入后会比较其PC URL所在的key下所有Pattern根结点,以生成或更新模型树的结点。其中,输入数据为:{PC Pattern,WAP Pattern,PC URL,WAP URL},PC Pattern为PC模型,WAP Pattern为WAP模型。
[0140] 见前文所述,步骤S30生成模型树时,可以基于每类初始URL模型对中各个初始PC模型之间的包含关系生成或更新模型树的结点,和/或,基于每类初始URL模型对中各个初始WAP模型,按序消解初始URL模型对中的通配符,基于消解后的初始URL模型对生成或更新模型树的结点。
[0141] 本申请实施例中,所述生成或更新模型树的结点,具体可以执行步骤S31~S35中的一个或多个步骤:
[0142] S31、判断当前输入数据中URL模型对的当前PC URL分段数下是否有根结点并获得第一判断结果,及判断当前输入数据中的PC Pattern与当前PC URL分段数下任一PC Pattern是否存在包含关系并获得第二判断结果。其中,本实施例所述的包含关系可以包括:相同、被包含但不相同、包含但不相同。
[0143] 若第一判断结果为否或者第二判断结果为否,执行S32:新建一个模型树,并将当前输入数据中的URL模型对作为新建模型树的根结点的结点模型及将当前输入数据中的URL对(PC URL和WAP URL)作为URL样本写入该根结点中。
[0144] 若第一判断结果为是且第二判断结果为是,根据当前输入数据中的PC Pattern与参考PC Pattern之间的具体关系,分别执行不同的操作,至少包括以下三种情况:
[0145] 第一种情况、若第一判断结果为是且第二判断结果为是,当前输入数据中的PC Pattern与当前key下参考PC Pattern相同,执行步骤S33:
[0146] S33:判断当前输入数据中的WAP Pattern是否与参考结点的WAP Pattern相同;其中参考PC Pattern为与当前输入数据中的PC Pattern存在包含关系的PC Pattern,其所在的结点称为参考结点;
[0147] 如果当前输入数据中的WAP Pattern与参考结点的WAP Pattern相同,将当前输入数据中的URL对(PC URL,WAP URL)添加入参考结点的URL样本即Sample集合中,完成对该条数据的处理;
[0148] 如果当前输入数据中的WAP Pattern与参考结点的WAP Pattern不相同,基于参考结点内的所有URL样本和当前输入数据中的URL对生成第二URL模型对,基于第二URL模型对生成参考结点的子结点。
[0149] 具体的,可以通过尝试消解通配符来区分不同的WAP Pattern及其对应的PC Pattern。根据结点内所有URL Sample,从最左边的通配符开始还原PC Pattern和WAP Pattern,生成Pattern结点作为参考结点的子结点,如果违反Constraint 2则停止分裂,标记该通配符为无效,继续尝试还原下一个通配符,直至找到满足限制条件的通配符,或者所有通配符均无效,则标记该结点无效,生成的Pattern将被抛弃。
[0150] 例如:假设参考结点的URL模型对为:
[0151] http://example.com/{4_word}/{3_decimal}/{2_word}_all.{0_word}
[0152] http://3g.example.com/{4_word}/{3_decimal}/{2_word}.{0_word}
[0153] 输入数据的URL模型对为:
[0154] http://example.com/{4_word}/{3_decimal}/{2_word}_all.{0_word}
[0155] http://3g.example.com/re/{4_word}/{3_decimal}/{2_word}.{0_word}
[0156] 基于参考结点中包含的PC Pattern和WAP Pattern即URL样本,和当前输入数据中的PC Pattern和WAP Pattern,消解模型最左边的通配符{4_word}得到的:
[0157] PC Pattern为:
[0158] http://example.com/news/{3_decimal}/{2_word}_all.{0_word}
[0159] http://example.com/sports/{3_decimal}/{2_word}_all.{0_word}
[0160] WAP Pattern为:
[0161] http://3g.example.com/re/news/{3_decimal}/{2_word}.{0_word}
[0162] http://3g.example.com/re/sports/{3_decimal}/{2_word}.{0_word}
[0163] 那么可以生成并建立子节点
[0164] http://example.com/news/{3_decimal}/{2_word}_all.{0_word}
[0165] http://3g.example.com/re/news/{3_decimal}/{2_word}.{0_word}
[0166] 和
[0167] http://example.com/sports/{3_decimal}/{2_word}_all.{0_word}
[0168] http://3g.example.com/re/sports/{3_decimal}/{2_word}.{0_word}
[0169] 相应的,将满足子节点模型的URL对写入子节点的URL样本中。
[0170] 第二种情况、若第一判断结果为是且第二判断结果为是,当前输入数据中的PC Pattern与当前key下参考PC Pattern不相同且包含于参考PC Pattern,即当前输入数据中的PC Pattern被参考PC Pattern包含,执行步骤S34:
[0171] S34、在参考PC Pattern所在结点即参考结点下,建立一个新的模型树结点,并将所述当前输入数据写入新的模型树结点中。
[0172] 具体的,可以在参考结点的所有子结点中,选择一个离参考PC Pattern最近的结点(参考结点或者其子结点下),新建一个模型树结点写入当前输入数据的URL模型对,并记录当前输入数据中的PC URL和WAP URL作为Sample。如果当前输入数据中的PC Pattern与参考结点相差超过一个通配符且中间无可用结点时,需要构建空的Pattern结点作为桥,连接当前结点与新建结点。
[0173] 第三种情况、若第一判断结果为是且第二判断结果为是,当前输入数据中的PC Pattern与当前key下参考PC Pattern不相同且包含参考PC Pattern,执行步骤S35:
[0174] S35、在所述参考PC Pattern所在结点上,建立一个新的模型树结点,将当前输入数据中的URL模型对写入新的模型树结点中;将当前输入数据中的PC URL和WAP URL写入新的模型树结点的URL样本中或者新的模型树结点的子结点的URL样本中。
[0175] 具体的,以输入数据新建结点,将参考结点作为新建结点的子结点,如果两结点的PC Pattern之间相差超过一个通配符,需要构建空的Pattern结点作为桥,连接新建结点与当前结点;以及,尝试寻找当前输入数据中的PC/WAP URL对是否满足子结点的Pattern,若满足子结点的PC/WAP Pattern,将当前输入数据中的URL对记录到适合的子结点中;否则记录在新建的结点中,等待后续处理。
[0176] 在步骤S30完成模型树的建立后,模型树可以直接作为URL转换模型,用于进行PC URL到WAP URL或者WAP URL到PC URL的转换。由于模型树以树形结构存储数据,模型树的文件格式对有些转换工具并不适用,为了使URL转换模型适用于更多的转换工具,本申请实施例还可以在步骤S30之后执行步骤S40:对模型树进行格式转换,生成预设格式的URL转换模型,预设格式的URL转换模型中URL模型对按照模型树中的包含关系进行排序。预设格式可以根据转换工具的要求进行设定,例如:若转换工具要求txt格式的URL转换模型,则可将预设格式设置为txt。
[0177] 其中,生成预设格式的URL转换模型时,可以遍历模型树的结点,获取URL样本不为空的结点并生成预设格式的URL转换文件,得到预设格式的URL转换模型;其中,生成预设格式的URL转换文件时,URL模型对按照所在模型树中的结点深度逆序排列,使得URL转换文件在使用时优先匹配结点深度大的模型。
[0178] 例如:若URL匹配是按顺序匹配时,按结点深度从大到小逆序排列规则;或者,若URL匹配是按倒序匹配时,按结点深度从小到大顺序排列规则,可保证更特殊的规则可以优先匹配,避免出现同一PC Pattern对应多条WAP Pattern时,URL被更通用的规则错误匹配。
[0179] 当遍历URL Sample时,遍历模型树的每个结点中的所有PC URL或WAP URL,判断是否存在一个结点中所有PC URL或所有WAP URL的一个分段对应的样本值(即分段内容)相同,为了便于后续描述,将该节点成为目标结点,将目标结点中具有同样样本值的分段称为目标分段;若存在,将目标结点中的PC模型或者WAP模型中的目标分段的通配符还原为样本值,即Pattern中的通配符如果具有唯一值,则用该值替换通配符,避免错误匹配。例如:假设某一结点中PC Pattern和WAP Pattern的分段{0_word}的样本值均为“html”,那么将PC Pattern和WAP Pattern的分段{0_word}还原为“html”。
[0180] 下面通过几个具体的实例,对本申请的模型建立方法进行完整说明:
[0181] 例1:URL对
[0182] PC URL:
[0183] http://example.com/news/2017-09-30/1A862CECA130626B_all.html
[0184] WAP URL:
[0185] http://3g.example.com/news/2017-09-30/1A862CECA130626B.html
[0186] 首先,对例1的URL进行分段,如下,其中URL对的主域为example.com:
[0187] PC URL分段:
[0188] http://example.com/news/2017-09-30/1A862CECA130626B_all.html
[0189] {index:0,segment:html,start:54,type:words}
[0190] {index:1,segment:all,start:50,type:words}
[0191] {index:2,segment:1A862CECA130626B,start:33,type:word}
[0192] {index:3,segment:30,start:30,type:decimal}
[0193] {index:4,segment:09,start:27,type:decimal}
[0194] {index:5,segment:2017,start:22,type:decimal}
[0195] {index:6,segment:news,start:17,type:word}
[0196] WAP URL分段:
[0197] http://3g.example.com/news/2017-09-30/1A862CECA130626B.html
[0198] {index:0,segment:html,start:53,type:words}
[0199] {index:1,segment:1A862CECA130626B,start:36,type:words}
[0200] {index:2,segment:30,start:33,type:decimal}
[0201] {index:3,segment:09,start:30,type:decimal}
[0202] {index:4,segment:2017,start:25,type:decimal}
[0203] {index:5,segment:news,start:20,type:word}
[0204] {index:6,segment:3g,start:7,type:word}
[0205] 然后,生成初始PC/WAP Pattern:
[0206] PC Pattern:
[0207] http://example.com/{6_word}/{5_decimal}-{4_decimal}-{3_decimal}/{2_word}_all.{0_word}
[0208] WAP Pattern:
[0209] http://3g.example.com/{6_word}/{5_decimal}-{4_decimal}-{3_decimal}/{2_word}.{0_word}
[0210] 循环处理URL对:
[0211] 按“URL对的主域+PC分段数”为key,则其key为“example.com+7”,该key下的容器初始状态为空,则该URL对输入后新建Pattern树结点,并以之为根结点放入容器。
[0212] Tree Root Node{
[0213] Pc pattern:
[0214] http://example.com/{6_word}/{5_decimal}-{4_decimal}-{3_decimal}/{2_word}_all.{0_word}
[0215] Wap Pattern:
[0216] http://3g.example.com/{6_word}/{5_decimal}-{4_decimal}-{3_decimal}/{2_word}.{0_word}
[0217] Sample:
[0218] http://example.com/news/2017-09-30/1A862CECA130626B_all.html
[0219] http://3g.example.com/news/2017-09-30/1A862CECA130626B.html
[0220] }
[0221] 例2:在例1的基础上输入数据:
[0222] URL对为:
[0223] http://example.com/news/2018-01-12/W232CA7Y93_all.html
[0224] http://3g.example.com/news/2018-01-12/W232CA7Y93.html
[0225] PC和Wap Pattern分别为:
[0226] http://example.com/{6_word}/{5_decimal}-{4_decimal}-{3_decimal}/{2_word}_all.{0_word}
[0227] http://3g.example.com/{6_word}/{5_decimal}-{4_decimal}-{3_decimal}/{2_word}.{0_word}
[0228] 按“URL对的主域+PC分段数”为key,则其key为“example.com+7”,该key下容器中有根结点PC Pattern与之完全一样,且Wap Pattern也一样,则直接将当前输入数据的URL对加入该结点的Sample。
[0229] 例3:在例2的基础上输入数据:
[0230] URL对为
[0231] http://example.com/sports/2018-01-11/A23E4WSE709H_all.html
[0232] http://3g.example.com/abc/sports/20180111/A23E4WSE709H.html
[0233] PC和Wap Pattern分别为:
[0234] http://example.com/{6_word}/{5_decimal}-{4_decimal}-{3_decimal}/{2_word}_all.{0_word}
[0235] http://3g.example.com/abc/{6_word}/{5_decimal}{4_decimal}{3_decimal}/{2_word}.{0_word}
[0236] 按“URL对的主域+PC分段数”为key,则其key为“example.com+7”,该key下容器中有根结点PC Pattern与之完全一样,但Wap Pattern不一样,此时应该分裂结点,从最左边开始,如按{6_word}不同原根结点分裂为了两个子结点,PC Pattern分别为:
[0237] http://example.com/news/{5_decimal}-{4_decimal}-{3_decimal}/{2_word}_all.{0_word}
[0238] http://example.com/sports/{5_decimal}-{4_decimal}-{3_decimal}/{2_word}_all.{0_word}
[0239] 这样,它们对应的WAP Pattern分别为
[0240] http://3g.example.com/news/{5_decimal}-{4_decimal}-{3_decimal}/{2_word}.{0_word}
[0241] http://3g.example.com/abc/sports/{5_decimal}{4_decimal}{3_decimal}/{2_word}.{0_word}
[0242] 同时,根结点的Sample URL会分配到相应的子结点中去。通过还原通配符,就能将相应的Pattern区分开。
[0243] 例4:样本唯一值的还原
[0244] 基于例3为基础,若结点中Sample不为空的情况,分裂的两个子结点生成的两个Pattern,其中最后一个通配符只有唯一值“html”,因此,生成最终模型时,两个Pattern分别是:
[0245] http://example.com/news/{5_decimal}-{4_decimal}-{3_decimal}/{2_word}_all.html
[0246] http://3g.example.com/news/{5_decimal}-{4_decimal}-{3_decimal}/{2_word}.html
[0247] 和
[0248] http://example.com/sports/{5_decimal}-{4_decimal}-{3_decimal}/{2_word}_all.html
[0249] http://3g.example.com/sports/{5_decimal}{4_decimal}{3_decimal}/{2_word}.html
[0250] 针对上述实施例提供一种URL转换模型的建立方法,本申请实施例还对应提供一种URL转换模型的建立装置,请参考图2,该装置包括:
[0251] 获取单元21,用于获取同一网站下主体内容相同的页面的URL对集合,每个URL对包含PC URL和WAP URL;
[0252] 分段单元22,用于对所述每个URL对中包括的PC URL和WAP URL进行分段,获取所述URL对的主域及URL分段信息,并基于所述URL对的主域和所述URL分段信息,获得初始URL模型对,每个初始URL模型对包括初始PC模型和初始WAP模型;所述URL分段信息包括:PC URL包括的分段数;
[0253] 模型树生成单元23,用于基于每个URL对的主域和PC URL包括的分段数对所述URL对集合中每个URL对对应的初始URL模型对进行分类,并基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树,其中,所述模型树中每个父结点中的PC模型包含子结点的PC模型,每个结点中包含一对PC模型和WAP模型及对应的URL样本。
[0254] 作为一种可选的实施方式,所述模型树生成单元23在生成或更新模型树的结点时,还用于:基于每类初始URL模型对中各个初始PC模型之间的包含关系生成或更新模型树的结点;和/或,基于每类初始URL模型对中各个初始WAP模型,按序消解初始URL模型对中的通配符,基于消解后的初始URL模型对生成或更新模型树的结点;其中,所述模型树的每个结点的PC模型包含的通配符数量在第一阈值范围内,及所述模型树的每个结点中包含的URL样本数量在第二阈值范围内。
[0255] 作为一种可选的实施方式,所述装置还包括:还原单元24,用于在生成所述模型树之后,遍历所述模型树的每个结点中的所有PC URL或WAP URL,判断是否存在目标结点中所有PC URL或所有WAP URL的目标分段对应的样本值相同;若存在,将所述目标结点中的PC模型或者WAP模型中的目标分段的通配符还原为所述样本值。
[0256] 作为一种可选的实施方式,所述模型树生成单元23可以包括:输入模块、判断模块和编辑模块。
[0257] 其中,输入模块用于将每个URL模型对及对应的URL对作为输入数据输入判断模块;所述判断模块用于对每个输入数据进行处理,包括:判断当前输入数据中URL模型对的当前PC URL分段数下是否有根结点并获得第一判断结果,及判断所述当前输入数据中的PC模型与所述当前PC URL分段数下任一PC模型是否存在包含关系并获得第二判断结果;编辑模块,用于若所述第一判断结果为否或者所述第二判断结果为否,新建一个模型树,并将当前输入数据中的URL模型对作为新建模型树的根结点的结点模型及将当前输入数据中的URL对作为URL样本写入所述根结点中。
[0258] 作为一种可选的实施方式,若所述第一判断结果为是且所述第二判断结果为是,所述判断模块还用于:在当前输入数据的PC模型与参考PC模型相同的情况下,判断当前输入数据的WAP模型与所述参考PC模型对应的WAP模型是否相同,其中,所述参考PC模型为当前PC URL分段数下与当前输入数据的PC模型存在包含关系的PC模型;所述编辑模块还用于:若当前输入数据的WAP模型与所述参考PC模型对应的WAP模型相同,将当前输入数据中的PC URL和WAP URL添加到所述参考PC模型对应的URL样本中;若当前输入数据的WAP模型与所述参考PC模型对应的WAP模型不相同,基于所述参考PC模型所在结点内的所有URL样本和当前输入数据中的URL对生成第二URL模型对,基于所述第二URL对生成所述参考PC模型所在结点的子结点。
[0259] 作为一种可选的实施方式,若所述第一判断结果为是且所述第二判断结果为是,且当前输入数据的PC模型与参考PC模型不相同且包含于所述参考PC模型,所述编辑模块还用于:
[0260] 在所述参考PC模型所在结点下,建立一个新的模型树结点,并将所述当前输入数据写入新的模型树结点中,其中,所述参考PC模型为当前PC URL分段数下与当前输入数据的PC模型存在包含关系的PC模型。
[0261] 作为一种可选的实施方式,若所述第一判断结果为是且所述第二判断结果为是,且,当前输入数据的PC模型与参考PC模型不相同且包含所述参考PC模型,所述编辑模块还用于:
[0262] 在所述参考PC模型所在结点上,建立一个新的模型树结点,将所述当前输入数据中的URL模型对写入新的模型树结点中,其中,所述参考PC模型为当前PC URL分段数下与当前输入数据的PC模型存在包含关系的PC模型;
[0263] 将所述当前输入数据中的PC URL和WAP URL写入新的模型树结点的URL样本中或者新的模型树结点的子结点的URL样本中。
[0264] 作为一种可选的实施方式,所述装置还包括:转换单元25,用于在基于每类URL模型对中各个PC模型之间的包含关系生成模型树之后,遍历模型树的结点,获取URL样本不为空的结点并生成预设格式的URL转换文件,其中生成所述预设格式的URL转换文件时,URL模型对按照所在模型树中的结点深度逆序排列,使得结点深度大的模型优先被匹配。
[0265] 作为一种可选的实施方式,所述分段单元22在进行分段时,还可以用于:
[0266] 基于所述URL分段信息包括的分段的内容和分段的类型,对所述URL对包括的PC URL和WAP URL进行通配,基于所述URL对的主域和通配结果获得初始URL模型对;所述URL分段信息包括:URL包括的分段数、每个分段的编号、分段的内容、分段在URL中的位置以及分段的类型;
[0267] 所述对所述URL对包括的PC URL和WAP URL进行通配包括:
[0268] 结合所述URL分段信息,将PC URL的分段信息和WAP URL的分段信息进行比对,确定内容相同的分段,将PC URL和WAP URL中,所述内容相同的分段用相应的通配符进行替换;并且,
[0269] 将所述URL对中包含的PC URL中分段类型为预设类型的分段用相应的通配符进行替换。
[0270] 作为一种可选的实施方式,所述分段单元22在进行分段时,还可以用于:
[0271] 基于预设的分段字符对每个URL对中包括的PC URL和WAP URL主域之外的字符进行分段,其中,若PC URL和WAP URL除主域之外存在数字或字母相同但所述分段字符不同的内容,采用相同的分段方式进行分段;
[0272] 记录每个分段的内容、该分段在URL中的位置以及该分段的类型,分别得到PC URL的分段信息和WAP URL的分段信息。
[0273] 关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0274] 图3是根据一示例性实施例示出的一种用于实现URL转换模型的建立的电子设备800的框图。例如,电子设备800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
[0275] 参照图3,电子设备800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/展现(I/O)的接口812,传感器组件814,以及通信组件816。
[0276] 处理组件802通常控制电子设备800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理元件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理部件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
[0277] 存储器804被配置为存储各种类型的数据以支持在设备800的操作。这些数据的示例包括用于在电子设备800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
[0278] 电源组件806为电子设备800的各种组件提供电。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为电子设备800生成、管理和分配电力相关联的组件。
[0279] 多媒体组件808包括在所述电子设备800和用户之间的提供一个展现接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
[0280] 音频组件810被配置为展现和/或输入音频信号。例如,音频组件810包括一个麦克(MIC),当电子设备800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于展现音频信号。
[0281] I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和定按钮。
[0282] 传感器组件814包括一个或多个传感器,用于为电子设备800提供各个方面的状态评估。例如,传感器组件814可以检测到设备800的打开/关闭状态,组件的相对定位,例如所述组件为电子设备800的显示器和小键盘,传感器组件814还可以检测电子设备800或电子设备800一个组件的位置改变,用户与电子设备800接触的存在或不存在,电子设备800方位或加速/减速和电子设备800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器压力传感器或温度传感器。
[0283] 通信组件816被配置为便于电子设备800和其他设备之间有线或无线方式的通信。电子设备800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信部件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信部件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
[0284] 在示例性实施例中,电子设备800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程阵列(FPGA)、控制器微控制器微处理器或其他电子元件实现,用于执行上述方法。
[0285] 在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由电子设备800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
[0286] 一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得电子设备能够执行一种URL转换模型的建立方法,所述方法包括:
[0287] 获取同一网站下主体内容相同的页面的URL对集合,每个URL对包含PC URL和WAP URL;
[0288] 对所述每个URL对中包括的PC URL和WAP URL进行分段,获取所述URL对的主域及URL分段信息,并基于所述URL对的主域和所述URL分段信息,获得初始URL模型对,每个初始URL模型对包括初始PC模型和初始WAP模型;所述URL分段信息包括:PC URL包括的分段数;
[0289] 基于每个URL对的主域和PC URL包括的分段数对所述URL对集合中每个URL对对应的初始URL模型对进行分类,并基于每类初始URL模型对中各个初始PC模型之间的包含关系生成模型树,其中,所述模型树中每个父结点中的PC模型包含子结点的PC模型,每个结点中包含一对PC模型和WAP模型及对应的URL样本。
[0290] 本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
[0291] 应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制[0292] 以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈