位置: 编程技术 - 正文

python中urllib.unquote乱码的原因与解决方法

编辑:rootadmin

推荐整理分享python中urllib.unquote乱码的原因与解决方法,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

发现问题

Python中的urllib模块用来处理url相关的操作,unquote方法对应javascript中的urldecode方法,它对url进行解码,把类似"%xx"的字符替换成单个字符,例如:“%E6%B3%%E5%9B%BD%E7%BA%A2%E9%%”解码后会转换成“法国红酒”,但是使用过程中,如果姿势不对,最终转换出来的字符会是乱码“æ³&#;å&#;&frac;红酔。

笔者在一个真实的Tornado应用中就遇到了这样的问题,浏览器通过请求传递到后台后,获取参数的值后:

name的值打印出来的显示的是:“%E6%B3%%E5%9B%BD%E7%BA%A2%E9%%”,看起来没什么问题,但结果最终保存到数据库中的时候就成了一串乱码“æ³&#;å&#;&frac;红酔,这个问题实在是让人百思不得其解。

python中urllib.unquote乱码的原因与解决方法

原因分析

于是想用直接编码的字符来处理看看是否会出现乱码:

发现这种方式处理没有任何问题,name的值解码之后就是“法国红酒”,经过一番思考,原因只可能是出在self.get_argument("name")这处代码段了。原来,get_argument默认返回的是值的类型是unicode,而unquote方法处理unicode类型的字符时,直接返回的就是:

注意:这里返回的值类型是unicode,也就是说unquote方法接收参数类型是unidoe,返回的值类型也是unicode,只不过是把"%"替换成了'x',最终由:

替换为了:

而u"xe6xb3xxe5x9bxbdxe7xbaxa2xe9xx"完全就是一个ascii码字符串,只不过是用进制表示的,我们再来看看'e6','b3'....分别对应ascii中的什么字符。你可以参考网址:

python爬虫实战之爬取京东商城实例教程 前言本文主要介绍的是利用python爬取京东商城的方法,文中介绍的非常详细,下面话不多说了,来看看详细的介绍吧。主要工具scrapyBeautifulSouprequests分

python爬虫框架scrapy实战之爬取京东商城进阶篇 前言之前的一篇文章已经讲过怎样获取链接,怎样获得参数了,详情请看python爬取京东商城普通篇,本文将详细介绍利用python爬虫框架scrapy如何爬取京

Python处理PDF及生成多层PDF实例代码 Python提供了众多的PDF支持库,本文是在Python3环境下,试用了两个库来完成PDF的生成的功能。PyPDF对于读取PDF支持较好,但是没找到生成多层PDF的方法。Re

标签: python中urllib.unquote乱码的原因与解决方法

本文链接地址:https://www.jiuchutong.com/biancheng/375555.html 转载请保留说明!

上一篇:Python面向对象特殊成员(python面向对象特征)

下一篇:python爬虫实战之爬取京东商城实例教程(python爬虫全套教程)

  • 外地预缴的附加税怎么算
  • 居民个人所得计算怎么做
  • 注册资本印花税按年申报还是按次申报
  • 销户本金转入保单怎么办
  • 库存现金的使用范围
  • 环境保护税属于什么税种
  • 办公室空调维修报告
  • 小规模普票专票税率一样吗
  • 单位补缴社保会罚款吗
  • 股东债权转资本公积利和弊
  • 普票抵扣税
  • 自由职业者知乎
  • 关于诉讼费减半如何减的问题
  • 公司车贷款还款怎么操作
  • 应收账款贷方余额怎么调平
  • 预收款项确认主营业务收入谨慎性
  • 商贸流通企业的构成
  • 暂估成本的会计处理
  • 附加税是按照应交增值税还是已交
  • 腾讯电脑管家中蓝牙在哪
  • 圣伊利亚斯山
  • Proxmox ve(PVE) 显示CPU和硬盘温度、UPS信息
  • 生产提供什么产品
  • php ftp上传文件
  • 通过mac地址查找ip的协议
  • 高新技术企业研发费加计扣除政策
  • token过期处理
  • phpswoole面试
  • 扣缴义务人的法律地位
  • php如何防止后门
  • PHP基于什么语言
  • php调试函数
  • html编写
  • cd相关命令
  • 哪些服务可以开具经纪代理服务发票
  • dedecms使用教程
  • 永久性差异会计不确认收入
  • json转pojo
  • 企业股东分红可抵税吗
  • sql 自定义字段
  • 配置英文
  • 实际已缴纳所得税额大于初始化金额
  • 一般纳税人的劳务公司的税率
  • 外账会计的做账流程
  • 小规模纳税人购买原材料会计分录
  • 收到加油
  • 应付账款长时间不付款怎么处理
  • 原材料存货跌价准备
  • 软件续费应记什么科目
  • 顺流交易为什么不考虑出售比例
  • 收到加盟费应该怎么做账
  • 开具正数发票中如何体现扣款?
  • 预计产品质量保证损失计入什么费用
  • 应交税费减免税额在借方还是贷方
  • 律师咨询费计入什么科目
  • 代别人公司发工资是工资薪金还是劳务报酬
  • sql语句行转列
  • 史上最简单的皮筋枪
  • 用SQL统计SQLServe表存储空间大小的代码
  • sql server怎么使用sql语句
  • 如何使用mac book
  • mac怎么用知云翻译
  • xp怎么删除电脑系统
  • Win10年度更新(RS1)怎么样升级?升级方法一览
  • os x10.8
  • win8 怎么样
  • win7的命令对话框在哪里
  • opengl 投影矩阵
  • jquery教程w3c
  • python 安装setup
  • perl列表去重
  • shell脚本实例精讲
  • 变量js
  • unity3d c++开发
  • 苏州税务ukey客服电话
  • 个人开服务费发票 个人所得税
  • 杭州国家税务局陈英泽
  • 城镇土地使用税的计算公式
  • 坡面台阶
  • 销售税金含增值税怎么计算企业所得税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设