对python中url参数编码与解码的实例详解


Posted in Python onJuly 25, 2019

一、简介

在python中url,对于中文等非ascii码字符,需要进行参数的编码与解码。

二、关键代码

1、url编码

对字符串编码用urllib.parse包下的quote(string, safe='/', encoding=None, errors=None)方法。

对json格式的参数名和值编码,用urllib.parse包下的

urlencode(query, doseq=False, safe='', encoding=None, errors=None, quote_via=quote_plus)方法。

2、url解码

解码用urllib.parse包下的unquote(string, encoding='utf-8', errors='replace')方法。

三、代码实例

from urllib.parse import quote, unquote, urlencode


def main():
 my_data = '好好学习'

 # url编码
 encode_data = quote(my_data)
 print("encode_data : %s " % encode_data)
 # url解码
 decode_data = unquote(encode_data)
 print("decode_data : %s " % decode_data)

 my_query = {'conent': '天天向上'}
 # url参数编码
 encode_query = urlencode(my_query)
 print("encode_query : %s " % encode_query)
 # url参数解码
 decode_query = unquote(encode_query)
 print("decode_query : %s " % decode_query)
 encode_url = 'http://127.0.0.1?'+encode_query
 # url解码
 decode_url = unquote(encode_url)
 print("decode_url : %s " % decode_url)


if __name__ == '__main__':
 main()

输出:

encode_data : %E5%A5%BD%E5%A5%BD%E5%AD%A6%E4%B9%A0 
decode_data : 好好学习 
encode_query : conent=%E5%A4%A9%E5%A4%A9%E5%90%91%E4%B8%8A 
decode_query : conent=天天向上 
decode_url : http://127.0.0.1?conent=天天向上

以上这篇对python中url参数编码与解码的实例详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python爬取Coursera课程资源的详细过程
Nov 04 Python
线程和进程的区别及Python代码实例
Feb 04 Python
Python中摘要算法MD5,SHA1简介及应用实例代码
Jan 09 Python
python多进程提取处理大量文本的关键词方法
Jun 05 Python
利用Pyhton中的requests包进行网页访问测试的方法
Dec 26 Python
详解python读取image
Apr 03 Python
windows10下安装TensorFlow Object Detection API的步骤
Jun 13 Python
python-django中的APPEND_SLASH实现方法
Jun 21 Python
pytorch中的embedding词向量的使用方法
Aug 18 Python
python中的TCP(传输控制协议)用法实例分析
Nov 15 Python
python实现扫雷小游戏
Apr 24 Python
基于python实现简单C/S模式代码实例
Sep 14 Python
使用WingPro 7 设置Python路径的方法
Jul 24 #Python
python selenium 查找隐藏元素 自动播放视频功能
Jul 24 #Python
简单了解Django应用app及分布式路由
Jul 24 #Python
django的ORM操作 删除和编辑实现详解
Jul 24 #Python
Django如何简单快速实现PUT、DELETE方法
Jul 24 #Python
django一对多模型以及如何在前端实现详解
Jul 24 #Python
详解Python是如何实现issubclass的
Jul 24 #Python
You might like
深入PHP5中的魔术方法详解
2013/06/17 PHP
使用PHP函数scandir排除特定目录
2014/06/12 PHP
php中解析带中文字符的url函数分享
2015/01/20 PHP
深入讲解PHP的Yii框架中的属性(Property)
2016/03/18 PHP
PHP调试及性能分析工具Xdebug详解
2017/02/09 PHP
Yii框架ACF(accessController)简单权限控制操作示例
2019/04/26 PHP
onsubmit阻止form表单提交与onclick的相关操作
2010/09/03 Javascript
js下通过getList函数实现分页效果的代码
2010/09/17 Javascript
精通Javascript系列之数据类型 字符串
2011/06/08 Javascript
jfreechart插件将数据展示成饼状图、柱状图和折线图
2015/04/13 Javascript
jQuery实用技巧必备(下)
2015/11/03 Javascript
微信小程序 弹幕功能简单实例
2017/02/14 Javascript
js实现一键复制功能
2017/03/16 Javascript
javascript 跨域问题以及解决办法
2017/07/17 Javascript
vue实现自定义日期组件功能的实例代码
2018/11/06 Javascript
Vue 动态组件components和v-once指令的实现
2019/08/30 Javascript
Javascript查看大图功能代码实现
2020/05/07 Javascript
Angular8 简单表单验证的实现示例
2020/06/03 Javascript
[43:43]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第三场 11.29
2020/12/02 DOTA
pytorch 数据集图片显示方法
2018/07/26 Python
python批量下载网站马拉松照片的完整步骤
2018/12/05 Python
Python常见数据结构之栈与队列用法示例
2019/01/14 Python
python flask框架实现传数据到js的方法分析
2019/06/11 Python
python opencv鼠标事件实现画框圈定目标获取坐标信息
2020/04/18 Python
Python socket模块ftp传输文件过程解析
2019/11/05 Python
Python函数式编程指南:对生成器全面讲解
2019/11/19 Python
使用Python的networkx绘制精美网络图教程
2019/11/21 Python
python 操作mysql数据中fetchone()和fetchall()方式
2020/05/15 Python
pandas 按日期范围筛选数据的实现
2021/02/20 Python
请解释接口的显式实现有什么意义
2012/05/26 面试题
北京振戎融通Java面试题
2015/09/03 面试题
新驾驶员个人自我评价
2014/01/03 职场文书
汽车专业学生自我评价
2014/01/19 职场文书
温馨提示标语
2014/06/26 职场文书
如何写好开幕词?
2019/06/24 职场文书
python3实现Dijkstra算法最短路径的实现
2021/05/12 Python