当前位置: 首页 > news >正文

python url encode_python urlencode

url中的query带有特殊字符(不是url的保留字)时需要进行编码。

当url中带有汉字时,需要特殊的处理才能正确编码,以下都只针对这种情形,当然也适用于纯英文字符的url。

(1) url编码import urllib

url = 'http://test.com/s?wd=哈哈'

url = url.decode('gbk', 'replace')

url = url.encode('utf-8', 'replace'

print urllib.urlencode({"name":url })

结果: 'name=http%3a%2f%2ftest.com%2fs%3fwd%3d%e5%93%88%e5%93%88'

(2) url解码:import urllib

encoded_url = 'http%3a%2f%2ftest.com%2fs%3fwd%3d%e5%93%88%e5%93%88'

print urllib.unquote(encoded_url).decode('utf-8', 'replace').encode('gbk', 'replace')

函数调用的参数以及结果都是utf-8编码的,所以在对url编码时,需要将参数串的编码从原始编码转换成utf-8,

对url解码时,需要将解码结果从utf-8转换成原始编码格式。

s.decode("utf-8", "ignore") 忽略其中有异常的编码,仅显示有效的编码s.decode("utf-8", "replace") 替换其中异常的编码,这个相对来可能一眼就知道那些字符编码出问题了。

注:参考:

http://huntmind.blog.163.com/blog/static/133672943201362594958796/

相关文章:

  • python查看变量属性_python如何看变量属性
  • python把文字矢量化_python pandas:尝试使用date_range对函数进行矢量化
  • 源代码src修改为本地图片_OpenWRT实践5:Feeds安装本地源
  • python推箱子游戏代码_推箱子游戏,推箱子游戏代码python实现
  • vs创建多个cpp_Linux CMake 快速使用(二)——共享库创建与链接
  • python爬虫爬取股票软件数据_使用python爬虫实现网络股票信息爬取的demo
  • 代码文件夹带有红色感叹号_无代码数据收集API
  • java 链表_《一起学习java和数据结构》系列-数组和链表
  • sql输出日期格式显示毫秒_JavaScript的日期格式化方法
  • python凯撒密码编写程序详解_新手求助:在Python里面编一个类似凯撒密码的程序,急啊!!!...
  • es修改mapping字段类型_Flink SQL问题日期数据类型强转错误
  • css怎么让两个table并排_CSS标准文档流
  • python删除字符串中的指定位置字符_python如何删除字符串中指定位置字符?
  • 有什么是python不能做的吗_python不能做什么
  • feign 第一次调用超时_定时任务与feign超时的纠葛,该咋优化?
  • php的引用
  • 【391天】每日项目总结系列128(2018.03.03)
  • iOS帅气加载动画、通知视图、红包助手、引导页、导航栏、朋友圈、小游戏等效果源码...
  • IP路由与转发
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • npx命令介绍
  • Phpstorm怎样批量删除空行?
  • Spark in action on Kubernetes - Playground搭建与架构浅析
  • tensorflow学习笔记3——MNIST应用篇
  • ubuntu 下nginx安装 并支持https协议
  • WebSocket使用
  • -- 查询加强-- 使用如何where子句进行筛选,% _ like的使用
  • 回流、重绘及其优化
  • 基于Android乐音识别(2)
  • 聊聊sentinel的DegradeSlot
  • 免费小说阅读小程序
  • 前端技术周刊 2019-02-11 Serverless
  • 前嗅ForeSpider中数据浏览界面介绍
  • 浅谈JavaScript的面向对象和它的封装、继承、多态
  • 深度学习中的信息论知识详解
  • 首页查询功能的一次实现过程
  • 学习Vue.js的五个小例子
  • 找一份好的前端工作,起点很重要
  • - 转 Ext2.0 form使用实例
  • 《天龙八部3D》Unity技术方案揭秘
  • Java总结 - String - 这篇请使劲喷我
  • 长三角G60科创走廊智能驾驶产业联盟揭牌成立,近80家企业助力智能驾驶行业发展 ...
  • #QT(串口助手-界面)
  • (06)Hive——正则表达式
  • (2.2w字)前端单元测试之Jest详解篇
  • (4)logging(日志模块)
  • (二)c52学习之旅-简单了解单片机
  • (附源码)计算机毕业设计SSM在线影视购票系统
  • (一)Spring Cloud 直击微服务作用、架构应用、hystrix降级
  • (转)shell中括号的特殊用法 linux if多条件判断
  • (转)Unity3DUnity3D在android下调试
  • .class文件转换.java_从一个class文件深入理解Java字节码结构
  • .NET Core 项目指定SDK版本
  • .NET/C# 使用反射注册事件
  • .NET8.0 AOT 经验分享 FreeSql/FreeRedis/FreeScheduler 均已通过测试