一种针对含特殊字符的url编码后的自动解码方法

文档序号:6385921阅读:461来源:国知局
专利名称:一种针对含特殊字符的url编码后的自动解码方法
技术领域
本发明涉及计算机应用技术领域,具体涉及ー种针对含特殊字符的URL编码后的自动解码方法。
背景技术
统一资源定位符(URL,Uniform Universal Resource Locator)也被称为网页地址,是因特网上标准的资源地址。在一些互联网应用中,为消除歧义,需要对URL进行编码。例如,含有中文、空格等特殊字符的URL通常会编码成含有“ %”和“ E6”等的字符长串。很多新闻站点的URL中会包含该条新闻的标题相关信息,恢复URL的原有形式在互联网信息采集领域有着非常重要的意义。可通过分析编码后的URL中特殊字符值的分布来判断编码方式,进而解码出原URL。但不同的编码方式存在交叉,有的字符值会在不同的编码方式中出现。

发明内容
本发明涉及一种针对含特殊字符的URL编码后的自动解码方法,所述方法包括:步骤SI,输入需要解码的编码后的URL字符串;步骤S2,按照不同的编码方式对所述编码后的URL字符串进行解码,得到不同的URL字符串;步骤S3,对所述得到的不同的URL字符串按照其对应的解码方式进行编码,得到不同的编码后的URL字符串;步骤S4,将所述得到的不同的编码后的URL字符串与输入的所述需要解码的编码后的URL字符串进行对比,如果所述得到的不同的编码后的URL字符串中有ー个与所述需要解码的编码后的URL字符串相同,取所述编码后的URL字符串对应的编码方式下步骤S2中得到的URL字符串为所述需要解码的编码后的URL字符串自动解码得到的URL字符串。本发明提供的第一优选实施例中:所述步骤S2中按照不同的编码方式对所述编码后的URL字符串进行解码是根据常用的编码字符集进行解码的;在中文环境下,按照GBK、Big5和UTF-8不同的编码方式进行解码。本发明提供的第二优选实施例中:如果所述步骤S2中按照所述常用的编码字符集进行不同方式的解码后,所述步骤S4中对比没有得到与所述需要解码的编码后的URL字符串相同的编码后的URL字符串,采用与所述步骤S2中不同的编码方式进行步骤S2-S4的操作。本发明提供的一种针对含特殊字符的URL编码后的自动解码方法的有益效果包括:本发明提供的一种针对含特殊字符的URL编码后的自动解码方法,针对含特殊字符的编码后的URL字符串,在URL字符串编码方式不明确并且不同的编码方式存在交叉不容易判断编码方式的情况下,比较精确的得到编码方式进行解码。


如图1所示为本发明提供的一种针对含特殊字符的URL编码后的自动解码方法的实施例的流程图。
具体实施例方式本发明提供一种针对含特殊字符的URL编码后的自动解码方法,该方法包括:步骤SI,输入需要解码的编码后的URL字符串。步骤S2,按照不同的编码方式对该编码后的URL字符串进行解码,得到不同的URL
字符串。步骤S3,对步骤S2中得到的不同的URL字符串按照其对应的解码方式进行编码,得到不同的编码后的URL字符串。步骤S4,将得到的不同的编码后的URL字符串与输入的需要解码的编码后的URL字符串进行对比,如果得到的不同的编码后的URL字符串中有ー个与需要解码的编码后的URL字符串相同,取该编码后的URL字符串对应的编码方式下步骤S2中得到的URL字符串为需要解码的编码后的URL字符串自动解码得到的URL字符串。步骤S2中按照不同的编码方式对编码后的URL字符串进行解码是根据常用的编码字符集进行解码的,比如在中文环境下:按照GBK、Big5和UTF-8等不同的编码方式进行解码。如果按照常用的编码字符集进行不同方式的解码后,步骤S4中对比没有得到与需要解码的编码后的URL字符串相同的`编码后的URL字符串,那么可以采用其他不常用的编码方式进行步骤S2-S4的操作。如图1所示为本发明提供的一种针对含特殊字符的URL编码后的自动解码方法的实施例的流程图,需要解码的编码后的URL字符串为:“..%ACF%AAv…”,假设GBK、Big5和Utf-8等不同的编码方式后进行相应的解码,得到不同的URL字符串,在按照其对应的解码方式进行编码得到不同的URL字符串,将得到的不同的URL字符串与“..%ACF%AAv…”进行对比,得到Big5编码方式下得到的URL字符串与“..%ACF%AAv…”相同,则取Big5编码方式下解码得到的“..政治…”为本实施例中需要解码的编码后的URL字符串经过自动解码得到的URL字符串。GBK编码与Big5编码的字符集有交叉,导致根据编码值的分布范围求原字符的编码方式在有些情况下行不通;URL中的特殊字符一般不止ー个,实际中所有的特殊字符在两种字符集中的编码值都相同的概率非常小,该情况下,只能通过肉眼并结合已有经验判断原URL值,保证了本方法的有效性。最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管參照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式
进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求范围当中。
权利要求
1.一种针对含特殊字符的URL编码后的自动解码方法,其特征在于,所述方法包括: 步骤SI,输入需要解码的编码后的URL字符串; 步骤S2,按照不同的编码方式对所述编码后的URL字符串进行解码,得到不同的URL字符串; 步骤S3,对所述得到的不同的URL字符串按照其对应的解码方式进行编码,得到不同的编码后的URL字符串; 步骤S4,将所述得到的不同的编码后的URL字符串与输入的所述需要解码的编码后的URL字符串进行对比,如果所述得到的不同的编码后的URL字符串中有ー个与所述需要解码的编码后的URL字符串相同,取所述编码后的URL字符串对应的编码方式下步骤S2中得到的URL字符串为所述需要解码的编码后的URL字符串自动解码得到的URL字符串。
2.按权利要求1所述的方法,其特征在于,所述步骤S2中按照不同的编码方式对所述编码后的URL字符串进行解码是根据常用的编码字符集进行解码的; 在中文环境下,按照GBK、Big5和UTF-8不同的编码方式进行解码。
3.按权利要求2所述的方法,其特征在于,如果所述步骤S2中按照所述常用的编码字符集进行不同方式的解码后,所述步骤S4中对比没有得到与所述需要解码的编码后的URL字符串相同的编码后的URL字符串,采用与所述步骤S2中不同的编码方式进行步骤S2-S4的操作。
全文摘要
本发明提供一种针对含特殊字符的URL编码后的自动解码方法,包括步骤S1.输入需要解码的编码后的URL字符串;步骤S2.按照不同的编码方式对编码后的URL字符串进行解码,得到不同的URL字符串;步骤S3.对得到的不同的URL字符串按照其对应的解码方式进行编码,得到不同的编码后的URL字符串;步骤S4.将得到的不同的编码后的URL字符串与输入的需要解码的编码后的URL字符串进行对比,如果得到的不同的编码后的URL字符串中有一个与需要解码的编码后的URL字符串相同,取编码后的URL字符串对应的编码方式下步骤S2中得到的URL字符串为需要解码的编码后的URL字符串自动解码得到的URL字符串,精确得到需要解码的编码后的URL字符串的编码方式进行解码。
文档编号G06F17/30GK103092922SQ20121058539
公开日2013年5月8日 申请日期2012年12月28日 优先权日2012年12月28日
发明者刘欣然, 李焱, 赵丽 申请人:国家计算机网络与信息安全管理中心
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1