我编写了一个简单的应用程序,可以从Wiki页面下载文章。例如,当我搜索名字Lech
时,我的代码将返回诸如Lech_Kaczy%C5%84ski
或Lech_Pozna%C5%84
之类的字符串,而不是Lech_Kaczyński
和Lech_Poznań
。
如何将这些字符解码为普通的波兰字母?我尝试使用:urllib.unquote(text)
,但随后得到Lech_Kaczy\xc5\x84ski
,Lech_Pozna\xc5\x84
而不是Lech_Kaczyński
和Lech_Poznań
。
我在我的代码中:
# -*- coding: utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
但是结果是一样的(根本行不通)。
最佳答案
试试这个:
import urllib
urllib.unquote("Lech_Kaczy%C5%84ski").decode('utf8')
这将返回一个unicode字符串:
u'Lech_Kaczy\u0144ski'
然后您可以照常进行打印和处理。例如:
print(urllib.unquote("Lech_Kaczy%C5%84ski").decode('utf8'))
将导致
Lech_Kaczyński