python中的urlencode和urldecode

python将字符串转化成urlencode ,或者将url编码字符串decode的方法:

方法1:

urlencode:urllib中的quote方法

>>> from urllib import quote
>>> quote(':') 
'%3A'
>>> quote('http://www.baidu.com')    
'http%3A//www.baidu.com'

urldecode:urllib中的unquote方法

>>> from urllib import unquote            
>>> unquote('http%3A//www.baidu.com')
'http://www.baidu.com' 

方法二

urllib.urlencode()


不幸的是,这个函数只能接收key-value pair格式的数据。即只针对dict的, 并且目前不提供urldecode方法

>>> import urllib 
>>> params = urllib.urlencode({'spam': 1, 'eggs': 2, 'bacon': 0}) 

>>> params = urllib.urlencode({'spam': 1, 'eggs': 2, 'bacon': 0})           
>>> params    ###自动转化成下面url的参数形式
'eggs=2&bacon=0&spam=1'

>>> f = urllib.urlopen("http://www.musi-cal.com/cgi-bin/query?%s" % params) 
>>> print f.read()

posted @ 2018-01-02 21:03  xushukui  阅读(22145)  评论(0编辑  收藏  举报