Python Urlencode 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)
结果:
username=02%E8%94%A1%E5%BD%A9%E8%99%B9&password=ddddd%3F

如果只想对一个字符串进行urlencode转换,urllib提供另外一个函数:quote();
很多地方会用多传输的时候,将json字符串进行urlEncode后,进行传输

import urllib.parse
import json
    filter = {'and': [{'field': 'msgSubject', 'value': 'obc_code', 'operator': '='},
                      {'field': 'msgTo', 'value': 'OBC', 'operator': '='},
                      {'field': 'msgType', 'value': 'confirmASNData', 'operator': '='}]}
    # 先把字段转为json
    filter_json = json.dumps(filter)
    # 再把json串进行urlencode
    filter_encode = urllib.parse.quote(str(filter_json))
print(filter_encode)

UrlDecode

python 没有urlDecode的函数
如果需要解码,urllib提供了unquote()这个函数

s='%E7%88%B8%E7%88%B8'
s=urllib.parse.unquote(s)
print(s)
输出结果为: 爸爸
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值