位置: 编程技术 - 正文

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爬虫全套教程)

  • 流量结转是什么意思
  • 自行申报是什么征收方式
  • 收回应收账款编制什么凭证
  • 预收账款怎么做财务分析报告
  • 季度所得税可以零申报吗
  • 不动产用于集体福利能否抵扣
  • 监理行业增值税税率多少
  • 仓库打包用的物品计什么科目
  • 一般纳税人净利润如何计算
  • 招待费汇算清缴扣除比例
  • 异地预缴增值税账务处理
  • 融资性售后回租是什么服务
  • 代扣代缴增值税纳税义务发生时间
  • 白酒在哪个环节征收消费税
  • 企业购买商品发生的商业 应该计入财务费用吗
  • 发票税表抵扣了账务未抵扣账务处理怎么做?
  • 增值税附表是自动生成的吗
  • 从两处领取工资,个人所得税应该如何申报缴纳?
  • 可供出售金融资产是指什么
  • 营改增后哪些费用可以抵扣
  • 递延所得税资产是什么
  • 用友t8怎么删除凭证
  • 本期就地缴纳的税额跟本期已缴税额
  • 金税盘上传参数测试连接失败
  • 医用酒精出口 需要什么条件
  • 出口企业取得失业保险
  • 失控票要在抵扣当月转出吗
  • 收购后的固定资产如何入账
  • 关闭非系统进程
  • php实现ping功能
  • 非营利组织增值税
  • 参加《2022 中国开发者影响力盛典》我的 4 重收获!
  • 固定资产内部转移单
  • 科技项目经费预算取费细则
  • 织梦模板安装完整教程
  • 小企业如何计提折旧
  • 小规模纳税人怎么开增值税专用发票
  • 采购供应部门发挥的作用
  • 发票已交税如何退税
  • 分组 sql
  • 营改增后一般纳税人按简易办法计税的规定
  • 付给对方钱对方应该怎么写
  • 住宿费收入会计分录
  • 现金日记账每月都要写期初余额吗
  • 旅行社差额征收怎么报税
  • 资产减值损失的原因
  • 电子承兑汇票的风险有哪些
  • 年底本年利润如何处理
  • 土地租金怎么做账
  • 多交增值税不能抵扣
  • 材料采购成本包括买价和采购费用
  • 如何做大建筑业企业
  • 公司初建账都有什么账
  • XP系统升级WIN7系统
  • win10重大更新
  • window所有程序在哪里
  • vista技巧:更改电源默认按钮为关机
  • phpstudy中phpmyadmin无法访问
  • 为什么ibooks无法使用
  • DxDebugService.exe是什么进程 DxDebugService进程安全吗
  • xp开机提示explorer
  • win10玩上古世纪闪退
  • win7 来宾账户
  • win10系统edge浏览器无法调用F12
  • win10升级win1
  • win7ie8和ie11
  • 【Cocso2d-x Lua笔记五】quick中的display
  • Android OnTouchEvent, onClick, onLongClick调用机制
  • shell脚本编程实例
  • javascript scrollTop正解使用方法
  • python递归查找
  • 支付宝是怎么写
  • node 调用c
  • 我的电脑为什么没有微软商店
  • 从香港回内地需要做核酸检测吗
  • 中华人民共和国刑法
  • 登录上海电子税务局找不到税务数字帐户
  • 财税指什么
  • 深圳个体户不注销的后果
  • 江苏电子税务局网站首页公共服务
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设