当url地址含有中文,或者参数有中文的时候,这个算是很正常了,但是把这样的url作为参数传递的时候(最常见的callback),需要把一些中文甚至'/'做一下编码转换。
所以对于一些中文或者字符,url不识别的,则需要进行转换,转换结果如下:
一、urlencode
urllib库里面有个urlencode函数,可以把key-value这样的键值对转换成我们想要的格式,返回的是a=1&b=2这样的字符串,比如:
import urllib.parse
values={}
values['username']='02蔡彩虹'
values['password']='ddddd?'
url="http://www.baidu.com"
data=urllib.parse.urlencode(values)
print(data)
结果如下:
如果只想对一个字符串进行urlencode转换,怎么办?urllib提供另外一个函数:quote()
import urllib.parse
s='长春'
s=urllib.parse.quote(s)
print(s)
输出结果为:
二、urldecode
当urlencode之后的字符串传递过来之后,接受完毕就要解码了——urldecode。urllib提供了unquote()这个函数,可没有urldecode()!
s='%E5%B9%BF%E5%B7%9E'
s=urllib.parse.unquote(s)
print(s)
输出结果为:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持python博客。
标签:urllib
Powered By python教程网 鲁ICP备18013710号
python博客 - 小白学python最友好的网站!