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实现对PPT文件进行截图操作的方法
Apr 28 Python
Python socket编程实例详解
May 27 Python
Python实现模拟登录及表单提交的方法
Jul 25 Python
Python中Scrapy爬虫图片处理详解
Nov 29 Python
Tensorflow实现卷积神经网络的详细代码
May 24 Python
Python中的Numpy矩阵操作
Aug 12 Python
python的concat等多种用法详解
Nov 28 Python
python使用Plotly绘图工具绘制气泡图
Apr 01 Python
Django中自定义模型管理器(Manager)及方法
Sep 23 Python
python单向链表的基本实现与使用方法【定义、遍历、添加、删除、查找等】
Oct 24 Python
django实现后台显示媒体文件
Apr 07 Python
pycharm使用技巧之自动调整代码格式总结
Nov 04 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判断所处服务器操作系统的类型
2013/06/20 PHP
Laravel 5框架学习之日期,Mutator 和 Scope
2015/04/08 PHP
JS setCapture 区域外事件捕捉
2010/03/18 Javascript
web页面数据展示新想法(json)
2010/06/08 Javascript
js+css使DIV始终居于屏幕中间 左下 左上 右上 右下的代码集合
2011/03/10 Javascript
jQuery实现鼠标滑过遮罩并高亮显示效果
2013/07/16 Javascript
JS实现拖动示例代码
2013/11/01 Javascript
Bootstrap的图片轮播示例代码
2015/08/31 Javascript
基于jQuery1.9版本如何判断浏览器版本类型
2016/01/12 Javascript
简述Matlab中size()函数的用法
2016/03/20 Javascript
浅谈window.onbeforeunload() 事件调用ajax
2016/06/29 Javascript
Javascript es7中比较实用的两个方法示例
2017/07/21 Javascript
vue-router配合ElementUI实现导航的实例
2018/02/11 Javascript
详解Typescript 内置的模块导入兼容方式
2020/05/31 Javascript
CentOS 8.2服务器上安装最新版Node.js的方法
2020/12/16 Javascript
基于vuex实现购物车功能
2021/01/10 Vue.js
Vue项目中使用mock.js的完整步骤
2021/01/12 Vue.js
[30:51]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#1Liquid VS MVP.Phx第一局
2016/03/04 DOTA
Python合并两个字典的常用方法与效率比较
2015/06/17 Python
基于MTCNN/TensorFlow实现人脸检测
2018/05/24 Python
使用Python实现将list中的每一项的首字母大写
2019/06/11 Python
python脚本实现音频m4a格式转成MP3格式的实例代码
2019/10/09 Python
Windows下Anaconda安装、换源与更新的方法
2020/04/17 Python
python爬虫使用正则爬取网站的实现
2020/08/03 Python
vscode调试django项目的方法
2020/08/06 Python
python自动提取文本中的时间(包含中文日期)
2020/08/31 Python
办公室副主任岗位职责
2013/11/25 职场文书
八年级美术教学反思
2014/02/02 职场文书
火锅店营销方案
2014/02/26 职场文书
法定代表人身份证明书
2014/09/10 职场文书
音乐教育专业自荐信
2014/09/18 职场文书
社区班子个人对照检查材料思想汇报
2014/10/07 职场文书
关于观后感的作文
2015/06/18 职场文书
MySQL不使用order by实现排名的三种思路总结
2021/06/02 MySQL
Python数据可视化之用Matplotlib绘制常用图形
2021/06/03 Python
在Centos 8.0中安装Redis服务器的教程详解
2022/03/21 Redis