python实现中文转换url编码的方法


Posted in Python onJune 14, 2016

本文实例讲述了python实现中文转换url编码的方法。分享给大家供大家参考,具体如下:

今天要处理百度贴吧的东西。想要做一个关键词的list,每次需要时,直接添加 到list里面就可以了。但是添加到list里面是中文的情况(比如‘丽江'),url的地址编码却是'%E4%B8%BD%E6%B1%9F',因此需 要做一个转换。这里我们就用到了模块urllib。

>>> import urllib
>>> data = '丽江'
>>> print data
丽江
>>> data
'\xe4\xb8\xbd\xe6\xb1\x9f'
>>> urllib.quote(data)
'%E4%B8%BD%E6%B1%9F'

那我们想转回去呢?

>>> urllib.unquote('%E4%B8%BD%E6%B1%9F')
'\xe4\xb8\xbd\xe6\xb1\x9f'
>>> print urllib.unquote('%E4%B8%BD%E6%B1%9F')
丽江

细心的同学会发现贴吧url中出现的是%C0%F6%BD%AD,而非'%E4%B8%BD%E6%B1%9F',其实是编码问题。百度的是gbk,其他的一般网站比如google就是utf8的。所以可以用下列语句实现。

>>> import sys,urllib 
>>> s = '丽江'
>>> urllib.quote(s.decode(sys.stdin.encoding).encode('gbk'))
'%C0%F6%BD%AD'
>>> urllib.quote(s.decode(sys.stdin.encoding).encode('utf8'))
'%E4%B8%BD%E6%B1%9F'
>>>

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
从零学Python之入门(三)序列
May 25 Python
用Python编写一个简单的俄罗斯方块游戏的教程
Apr 03 Python
python实现提取百度搜索结果的方法
May 19 Python
Python 装饰器深入理解
Mar 16 Python
Python 私有函数的实例详解
Sep 11 Python
django静态文件加载的方法
May 20 Python
Python读取mat文件,并转为csv文件的实例
Jul 04 Python
python 构造三维全零数组的方法
Nov 12 Python
Django url,从一个页面调到另个页面的方法
Aug 21 Python
django 取消csrf限制的实例
Mar 13 Python
python3.7.3版本和django2.2.3版本是否可以兼容
Sep 01 Python
Python手拉手教你爬取贝壳房源数据的实战教程
May 21 Python
Python的Django框架中消息通知的计数器实现教程
Jun 13 #Python
详解Python的Flask框架中的signals信号机制
Jun 13 #Python
Python的Flask站点中集成xhEditor文本编辑器的教程
Jun 13 #Python
Flask的图形化管理界面搭建框架Flask-Admin的使用教程
Jun 13 #Python
Python的Flask框架中集成CKeditor富文本编辑器的教程
Jun 13 #Python
Linux中安装Python的交互式解释器IPython的教程
Jun 13 #Python
浅谈python中的面向对象和类的基本语法
Jun 13 #Python
You might like
解决 firefox 不支持 document.all的方法
2007/03/12 Javascript
firefox浏览器下javascript 拖动层效果与原理分析代码
2007/12/04 Javascript
教你如何解密js/vbs/vbscript加密的编码异处理小结
2008/06/25 Javascript
Jquery 快速构建可拖曳的购物车DragDrop
2009/11/30 Javascript
通过JavaScript控制字体大小的代码
2011/10/04 Javascript
利用js制作html table分页示例(js实现分页)
2014/04/25 Javascript
jQuery+HTML5实现图片上传前预览效果
2015/08/20 Javascript
使用堆实现Top K算法(JS实现)
2015/12/25 Javascript
jQuery实现的点赞随机数字显示动画效果(附在线演示与demo源码下载)
2015/12/31 Javascript
jQuery EasyUi实战教程之布局篇
2016/01/26 Javascript
AngularJS页面访问时出现页面闪烁问题的解决
2016/03/06 Javascript
JS实现队列与堆栈的方法
2016/04/21 Javascript
js es6系列教程 - 基于new.target属性与es5改造es6的类语法
2017/09/02 Javascript
Vee-Validate的使用方法详解
2017/09/22 Javascript
webpack4 处理SCSS的方法示例
2018/09/03 Javascript
12个提高JavaScript技能的概念(小结)
2019/05/09 Javascript
python发送邮件接收邮件示例分享
2014/01/21 Python
带你了解python装饰器
2017/06/15 Python
Numpy中转置transpose、T和swapaxes的实例讲解
2018/04/17 Python
python使用opencv驱动摄像头的方法
2018/08/03 Python
对Python定时任务的启动和停止方法详解
2019/02/19 Python
TensorFlow卷积神经网络之使用训练好的模型识别猫狗图片
2019/03/14 Python
python实现的按要求生成手机号功能示例
2019/10/08 Python
在flask中使用python-dotenv+flask-cli自定义命令(推荐)
2020/01/05 Python
利用matplotlib为图片上添加触发事件进行交互
2020/04/23 Python
python使用列表的最佳方案
2020/08/12 Python
世界领先的以旅馆为主的在线预订平台:Hostelworld
2016/10/09 全球购物
出国签证在职证明
2014/01/16 职场文书
会计专业毕业自荐书范文
2014/02/08 职场文书
学生会部长竞聘书
2014/03/31 职场文书
新员工试用期自我鉴定
2014/04/17 职场文书
2014年教研组工作总结
2014/11/26 职场文书
2016党校培训心得体会
2016/01/07 职场文书
Java数组与堆栈相关知识总结
2021/06/29 Java/Android
PHP获取学生成绩的方法
2021/11/17 PHP
Android学习之BottomSheetDialog组件的使用
2022/06/21 Java/Android