今天要处理百度贴吧的东西。想要做一个关键词的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中文转换url编码的更多相关文章

  1. 【转】python中文转换url编码

    今天要处理百度贴吧的东西.想要做一个关键词的list,每次需要时,直接添加 到list里面就可以了.但是添加到list里面是中文的情况(比如‘丽江’),url的地址编码却是'%E4%B8%BD%E6% ...

  2. python中的URL编码和解码

    python中的URL编码和解码:test.py # 引入urllib的request模块 import urllib.request url = 'https://www.douban.com/j/ ...

  3. 浏览器自动转换URL编码产生乱码问题

    如果网址中含有汉字,浏览器会自动将其转换成URL编码,而在接收端,它又自动转换回来. 大部分时候都没什么问题,但有时候就很讨厌.因为生成这种URL编码,编码时的字符集和解码字符集不一定相同,比如编码时 ...

  4. Python学习之==>URL编码解码&if __name__ == '__main__'

    一.URL编码解码 url的编码解码需要用到标准模块urllib中的parse方法 from urllib import parse url = 'http://www.baidu.com?query ...

  5. 为什么要使用encodeURL转换URL编码?

    参考: https://www.cnblogs.com/haitao-fan/p/3399018.html http://www.ruanyifeng.com/blog/2010/02/url_enc ...

  6. Python中的url编码问题

    >>> import urllib >>> a = "PythonTab中文网" >>> a 'PythonTab\xe4\x ...

  7. URL 编码 之 我见

    URL编码 编辑 url编码是一种浏览器用来打包表单输入的格式.浏览器从表单中获取所有的name和其中的值 ,将它们以name/value参数编码(移去那些不能传送的字符,将数据排行等等)作为URL的 ...

  8. LR URL编码和解码方法

    问题:URL=http://www.baidu.com/s?wd=%E6%B5%B7%E6%B7%80%E9%BB%84%E5%BA%84"中要对%E6%B5%B7%E6%B7%80%E9% ...

  9. 用python查看URL编码的中文

    什么是URL编码呢,请看https://zh.wikipedia.org/wiki/Urlencode. 有时,我们向一些网站提交中文参数时,中文是会被编码成这种格式的 "%B1%E0%C2 ...

随机推荐

  1. PIP 批量更新改为清华这边的镜像更新

    之前pip批量更新的时候发现有些包无法更新,而且速度也特别慢,今天尝试了下清华的镜像,速度是真快 # coding=utf-8import pipfrom subprocess import call ...

  2. cin.get()、流和缓冲区

    大家好,这是我在CSDN的第一篇博客.我是一名学习GIS专业的大学生.我从小开始喜欢编程,可是到现在编程水平却长进不大,依然是菜鸟一个.究其原因,虽然这些年乱七八糟的东西学过不少,但是总的来说还是基础 ...

  3. a标签nest问题,即a标签里面嵌套a标签

    方法一:使用div模拟a,监听click事件 方法二:使用<object>标签包裹内部a标签 <div style="width: 200px;height: 200px; ...

  4. 一道lambda表达式题目

    #include <iostream> #include <functional> using namespace std; auto Pair = [](auto u, au ...

  5. Spring MVC 与 CORS

    1. CORS 简介 同源策略(same origin policy)是浏览器安全的基石.在同源策略的限制下,非同源的网站之间不能发送 ajax 请求的. 为了解决这个问题,w3c 提出了跨源资源共享 ...

  6. Part2-HttpClient官方教程-Chapter2-连接管理

    2.1 连接持久性 建立从一个主机到另一个主机的连接的过程相当复杂,并且涉及两个端点之间的多个分组交换,这可能相当耗时.连接握手的开销可能很大,特别是对于小型的HTTP消息. 如果可以重新使用开放连接 ...

  7. 使用BackgroundWorker

    1,WPF应用程序为单线程模型(STAThread),所有UI控件都是主线程创建的,只有主线程能操作UI元素的显示. 2,其他工作线程要维护UI控件的显示,需调用主线程的Dispather,执行Inv ...

  8. 如何用CMD开启3389与查看3389端口

    开启 REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections / ...

  9. mysql主从复制、操作语句

    授权 grant replication slave on *.* to slave@192.168.10.64 identified by "123456" 登录测试 mysql ...

  10. Mongo 配置文件 [www]

    Mongo 配置文件  [www] http://blog.chinaunix.net/uid-25206403-id-3510934.html mongodb 安装使用 http://blog.si ...