python中的urlencode与urldecode

原文链接:https://www.cnblogs.com/caicaihong/p/5687522.html

当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)

结果如下:

username=02%E8%94%A1%E5%BD%A9%E8%99%B9&password=ddddd%3F

如果只想对一个字符串进行urlencode转换,怎么办?urllib提供另外一个函数:quote()

import urllib.parse
s='长春'
s=urllib.parse.quote(s)
print(s)

输出结果为:

%E9%95%BF%E6%98%A5

二、urldecode

当urlencode之后的字符串传递过来之后,接受完毕就要解码了——urldecode。urllib提供了unquote()这个函数,可没有urldecode()!

s='%E5%B9%BF%E5%B7%9E'
s=urllib.parse.unquote(s)
print(s)

输出结果为:

广州

来源:https://www.cnblogs.com/caicaihong/p/5687522.html

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏数据森麟

Python批量下载无版权图片

生活或者工作中,不管是写文章、公司 UI 交互图还是广告图等等都需要用到图片,图片的优点和重要性自不用说。

9210
来自专栏孤独的S

python ---超级。无敌之究极简单之获取台风经纬度

虽然现在台风已经过去了。不过假设你以后需要这些资料的时候,获取就很是方便了,最基础的requests就可以了。就算不懂爬虫的也可以做得到爬取。

11030
来自专栏数据森麟

2000万条直播数据,揭秘斗鱼主播生存现状

本文转载自凹凸玩数据 2019年7月17日游戏直播平台斗鱼在美国纳斯达克股票交易所成功上市,成为继虎牙直播之后第二家赴美上市的国内直播平台。

12920
来自专栏安恒网络空间安全讲武堂

ThinkPHP 5.1.x~5.2.x全版本 RCE 漏洞分析

大概看了下,这个洞跟5.0的原理大致相同,都是利用Reuqest类的Method方法覆盖了 $this->filter属性,然后进入 filterValue调用...

16520
来自专栏Rust语言学习交流

【Rust日报】2019-09-25 Nushell 0.3.0 发布

Nushell(简称Nu)是一种新型的shell,它采用现代的结构化方法来处理命令行。它与来自文件系统、操作系统和越来越多的文件格式的数据无缝地工作,使构建强大...

11920
来自专栏为了不折腾而去折腾的那些事

使用 Docker 和 Traefik 搭建 Flarum 轻论坛应用

本文使用「署名 4.0 国际 (CC BY 4.0)」许可协议,欢迎转载、或重新修改使用,但需要注明来源。 署名 4.0 国际 (CC BY 4.0)

15120
来自专栏安恒网络空间安全讲武堂

使用Centrifuge平台检测固件漏洞

最近,针对TP-Link WL-WA850RE WiFi Range Extender 发布的漏洞引起了我们的注意,并对其进行了进一步调查。对于许多低成本的消费...

14120
来自专栏数据森麟

为什么大部分的码农都做不了架构师?

一般来说技术团队的金字塔顶尖往往是技术最牛的人做架构师(或TL)。所以架构师在广大码农中的占比大概平均不到 20%。

9520
来自专栏孤独的S

python---爬取英雄联盟皮肤图片

爬LOL的皮肤高清图片的大致步骤就是用selenium去爬取英雄联盟所以英雄的皮肤的url地址,然后在用requests库去将图片下载到本地。

6840
来自专栏宅机吧

最新新浪短网址(t.cn)生成API接口

79720

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励