python网址编码转换_Python3 url编码解码(特殊字转%xx)的办法

介绍Python3中处理url遇到的UnicodeEncodeError时,进行url编码的方法,以及从编码解码出原来文字。

906dbbcadce8904889860e44130e5f20427192cd.jpg?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_500%2Climit_1

工具/原料

Python 3.6

方法/步骤

1

首先,如图是尝试把含有中文汉字的url进行请求头设置时,出现的UnicodeEncodeError。

对应代码如图所示。

b87bd38920c5260f1c4fa439d2de4507890189cd.jpg?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_500%2Climit_1

3931cb413a8ca6083875ed4fdb8c9bcec6f8fecd.jpg?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_500%2Climit_1

2

进行url编码,首先要从urllib引入parse。

如图:from urllib import parse。

a44e8afc508c9bce6682f3c4d6dd884ce44afacd.jpg?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_500%2Climit_1

3

接着,对于url中的需要编码的特殊文字部分,使用parse.quote进行url编码,再和其余部分连接即可。

890dfb4a2f27e7ef807c12b219dd3340b7f3f5cd.jpg?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_500%2Climit_1

4

如图,再PyCharm中,使用断点调试,查看url编码后的字符串,可以看到是%xx的序列。

6a408cdd3340b6f33cfd7aaf12c0affce086eecd.jpg?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_500%2Climit_1

5

使用parse.unquote函数,可以将一个含有url编码的字符串进行Url解码,得到原字符串,如图。

b7b28f87031c99c01f869835af2fa872951fedcd.jpg?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_500%2Climit_1

END

注意事项

注意不要对整个url进行url编码,那样会把http后面的符号编码了。

经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。

举报作者声明:本篇经验系本人依照真实经历原创,未经许可,谢绝转载。

展开阅读全部

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值