一、简介

在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 url解码_对python中url参数编码与解码的实例详解相关推荐

  1. JAVA中希尔排序去的讲解_java 中基本算法之希尔排序的实例详解

    java 中基本算法之希尔排序的实例详解 希尔排序(Shell Sort)是插入排序的一种.也称缩小增量排序,是直接插入排序算法的一种更高效的改进版本.希尔排序是非稳定排序算法.该方法因DL.Shel ...

  2. mysql resulttype map_Mybatis中的resultType和resultMap查询操作实例详解

    resultType和resultMap只能有一个成立,resultType是直接表示返回类型的,而resultMap则是对外部ResultMap的引用,resultMap解决复杂查询是的映射问题.比 ...

  3. java对url参数编码_对URL中的参数编码和解码

    有时,我们希望点击页面中的链接跳转其他页面,并且以get的方式传递一些参数.如果不对这些参数编码,可能会造成一些问题: 1.  参数中的空格可能会让你无法打开页面 2.  参数中的&符号会影响 ...

  4. python中字符串乘法_python leetcode 字符串相乘实例详解

    给定两个以字符串形式表示的非负整数 num1 和  num2 ,返回  num1 和  num2 的乘积,它们的乘积也表示为字符串形式. 示例 1: 输入: num1 = "2", ...

  5. python定义数组并赋值_python中的数组赋值与拷贝的区别详解

    具体的注解我已经写在了程序里面:通俗的解释了python里面的浅拷贝与深拷贝的不同,请看程序. # -*- coding: utf-8 -*- import numpy as np import co ...

  6. python爬虫beautifulsoup爬当当网_Python爬虫包 BeautifulSoup 递归抓取实例详解_python_脚本之家...

    Python爬虫包 BeautifulSoup  递归抓取实例详解 概要: 爬虫的主要目的就是为了沿着网络抓取需要的内容.它们的本质是一种递归的过程.它们首先需要获得网页的内容,然后分析页面内容并找到 ...

  7. python3库_对python3中pathlib库的Path类的使用详解

    用了很久的os.path,今天发现竟然还有这么好用的库,记录下来以便使用. 1.调用库 from pathlib import 2.创建Path对象 p = Path('D:/python/1.py' ...

  8. wxss 点击样式_微信小程序点击控件修改样式实例详解

    微信小程序点击控件修改样式实例详解 现在要在微信小程序中实现点击控件修改样式,如下: 微信小程序中不支持直接操作dom,要实现这种效果,我们需要通过设置data,然后利用数据和界面的双向绑定来实现它. ...

  9. php表格中的caption,html中caption标签的使用方法及实例详解

    html5中 标签作用是定义表格标题,这里详细介绍下标签用法.标签属性以及标签应用实例. html中 标签作用:定义表格标题标签用法: caption 元素定义表格标题. caption 标签必须紧随 ...

  10. python打乱数据集_在Keras中利用np.random.shuffle()打乱数据集实例

    我就废话不多说了,大家还是直接看代码吧~ from numpy as np index=np.arange(2000) np.random.shuffle(index) print(index[0:2 ...

最新文章

  1. 【JAVA小游戏+水果售卖系统】基于GUI界面编程的水果“人生”模拟系统
  2. 【翻译】Ext JS 6 Beta发布
  3. 创建自定义Widgets小部件扩展
  4. python批量json文件转xml文件脚本(附代码)
  5. 华为ensp常用简单命令(二)
  6. 内部类详解————静态内部类
  7. eclipse 开发环境配置
  8. java httpost阻塞_httpclient发送get请求阻塞?
  9. 使用opencv中函数实现基于Harris算法的图像角点检测
  10. Climbing Stairs @python
  11. 海量数据实时计算系统在高并发互联网应用中的原理和实践
  12. 2000年前毕业,学历在学信网查不到解决方法
  13. CC2650 入手资料总结(转)
  14. AWB调试中(Tuning)的几个问题
  15. android 蓝牙hf编程,基于Android蓝牙Inband ring功能实现.doc
  16. C语言 - 运输公司对用户计算运输费用。路程(s km)越远,每吨·千米运费越低。(用switch实现)
  17. 论人性文明与人工智能发展(一)
  18. QVegas-一个升级版的TCP Vegas拥塞算法
  19. Homekit智能家居创意DIY一智能灯
  20. 【sqlilabs】遗留问题

热门文章

  1. 034 自己还能找到好老婆吗??
  2. 中秋节到了,送你一个Python做的Crossin牌“月饼”
  3. tensorflow的各种版本下载镜像安装
  4. JavaScript语法糖的简析
  5. java函数方法详解(简单易懂)
  6. Java自定义Cron,解析Cron表达式
  7. 嵌入式操作系统漫议:功能与特点
  8. 【Linux 内核】调度器 ⑨ ( Linux 内核调度策略 | SCHED_NORMAL 策略 | SCHED_FIFO 策略 | SCHED_NORMAL 策略 | SCHED_BATCH策略 )
  9. 不同的纳税信用等级对企业有何影响?
  10. python断言assert实例_python接口测试assert断言