用python查看URL编码的中文

来源:互联网 发布:python实现高斯分布 编辑:程序博客网 时间:2024/05/12 06:16

  什么是URL编码呢,请看https://zh.wikipedia.org/wiki/Urlencode。

       有时,我们向一些网站提交中文参数时,中文是会被编码成这种格式的 “%B1%E0%C2%EB ”,它的原文是“编

码”,URL编码也被称为“百分号编码”,是不是有很多百分号。我们常使用的“空格”的URL编码就是 “%20”,但是新的

标准把“空格” 替换为 ”+“,要是你遇到了一些看不懂的 URL编码 ,你该怎么办?


方法一:在这个链接 ”http://www.baidu.com/s?wd= ” 后加上你的 URL编码,然后在浏览器打开你拼接后的链

接。譬如,我要查看的是“%B1%E0%C2%EB”,加在百度的链接后,在浏览器打开 

“http://www.baidu.com/s?wd=%B1%E0%C2%EB”,我看到的是

这不就看出原文了大笑,是不是感觉这种方法很有趣啊,是安特介绍的。

方法二:用python里的库 urllib,urllib 里有两个函数 urllib.quote 和 urllib.unquote ,一看名字,就知道它们是

相反的。先看一下他们的说明把,

简而言之,urlib.quote 就是返回URL编码后的字符串,而urllib.unquote 则是解码。

我们来写一些简单的测试代码:

# -*- coding: gb2312 -*-#tab = 4 spacesimport urllibdef url_de(x):    '''对URL进行解码'''    return urllib.unquote(x)def url_en(x):    '''返回URL编码'''    return urllib.quote(x)x = '编码'y = url_en(x)print '原来的字符串是:',xprint '编码后的字符串是:',yprint '解码后的字符串是:',url_de(y)

程序运行结果:

  这不就是我们想要的结果吗。搞定。

 

2 0
原创粉丝点击