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 相关文章推荐
Django1.7+python 2.78+pycharm配置mysql数据库教程
Nov 18 Python
Python素数检测的方法
May 11 Python
Python文件和流(实例讲解)
Sep 12 Python
ubuntu中配置pyqt4环境教程
Dec 27 Python
python实现寻找最长回文子序列的方法
Jun 02 Python
python判断输入日期为第几天的实例
Nov 13 Python
如何用Python破解wifi密码过程详解
Jul 12 Python
Django  ORM 练习题及答案
Jul 19 Python
python Django 创建应用过程图示详解
Jul 29 Python
flask 实现token机制的示例代码
Nov 07 Python
keras:model.compile损失函数的用法
Jul 01 Python
PyCharm设置注释字体颜色以及是否倾斜的操作
Sep 16 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
关于PHP中的Class的几点个人看法
2006/10/09 PHP
PHP has encountered an Access Violation 错误的解决方法
2010/01/17 PHP
探讨php define()函数及defined()函数使用详解
2013/06/09 PHP
学习php设计模式 php实现装饰器模式(decorator)
2015/12/07 PHP
JAVASCRIPT HashTable
2007/01/22 Javascript
使Ext的Template可以解析二层的json数据的方法
2007/12/22 Javascript
javascript 表单规则集合对象
2009/07/21 Javascript
遨游,飞飞,IE,空中网 浏览器无提示关闭方法
2011/07/11 Javascript
javascript 进阶篇2 CSS XML学习
2012/03/14 Javascript
获取元素距离浏览器周边的位置的方法getBoundingClientRect
2013/04/17 Javascript
将中国标准时间转换成标准格式的代码
2014/03/20 Javascript
js如何判断用户是否是用微信浏览器
2014/06/05 Javascript
JavaScript将取代AppleScript?
2014/09/18 Javascript
javascript中bind函数的作用实例介绍
2014/09/28 Javascript
javascript事件模型实例分析
2015/01/30 Javascript
jquery实现图片水平滚动效果代码分享
2015/08/26 Javascript
基于javascript实现图片懒加载
2016/01/05 Javascript
浅析jQuery 3.0中的Data
2016/06/14 Javascript
jQuery插件zTree实现更新根节点中第i个节点名称的方法示例
2017/03/08 Javascript
JS传参及动态修改页面布局
2017/04/13 Javascript
vue中axios请求的封装实例代码
2019/03/23 Javascript
Bootstrap告警框(alert)实现弹出效果和短暂显示后上浮消失的示例代码
2020/08/27 Javascript
跟老齐学Python之数据类型总结
2014/09/24 Python
Django objects.all()、objects.get()与objects.filter()之间的区别介绍
2017/06/12 Python
TF-IDF算法解析与Python实现方法详解
2017/11/16 Python
Python3 串口接收与发送16进制数据包的实例
2019/06/12 Python
python交易记录整合交易类详解
2019/07/03 Python
python同义词替换的实现(jieba分词)
2020/01/21 Python
Python利用pip安装tar.gz格式的离线资源包
2020/09/14 Python
美国隐形眼镜零售商:LensPure
2019/03/10 全球购物
linux面试题参考答案(3)
2012/09/13 面试题
西安大雁塔导游词
2015/02/10 职场文书
校友回访母校寄语
2015/02/26 职场文书
结婚堵门保证书
2015/05/08 职场文书
Redis入门教程详解
2021/08/30 Redis
GoFrame gredis缓存DoVar Conn连接对象 自动序列化GoFrame gredisDo/DoVar方法Conn连接对象自动序列化/反序列化总结
2022/06/14 Golang