Skip to main content
 首页 » 编程设计

python之用python进行简单的ascii url编码

2025年05月04日11daizhj

看看那个:

import urllib 
print urllib.urlencode(dict(bla='Ã')) 

输出是

bla=%C3%BC 

我想要的很简单,我想要 ascii 而不是 utf-8 的输出,所以我需要输出:

bla=%C3 

如果我尝试:

urllib.urlencode(dict(bla='Ã'.decode('iso-8859-1'))) 

不起作用(我所有的 python 文件都是 utf-8 编码的):

'ascii' 编解码器无法对位置 0-1 中的字符进行编码:序号不在范围内 (128)

在生产中,输入是统一编码的。

请您参考如下方法:

看看unicode transliteration in python :

from unidecode import unidecode 
print unidecode(u"\u5317\u4EB0") 
 
# That prints: Bei Jing 

在你的情况下:

bla='Ã' 
print unidecode(bla) 
'A' 

这是第三方库,可以通过以下方式轻松安装:

$ git clone http://code.zemanta.com/tsolc/git/unidecode 
$ cd unidecode 
$ python setup.py install