在python中正确解码十六进制转义的unicode字符串

时间:2017-11-15 10:44:19

标签: python unicode beautifulsoup robobrowser mojibake

我正在使用RoboBrowser(使用BeautifulSoup)从网站中提取链接,其中一些链接包含unicode字符。但是我无法让python正确解释它。

例如,链接包含此西里尔字符

  

п

其中URL编码为

database.name=database_production   # will be used when no mode is set (or prod)
%prod.database.name=database_prod   # will be used when running in prod mode
%dev.database.name=database_dev     # will be used when running in dev mode
%test.database.name=database_test   # will be used when running in test mode

美味的汤会吐出来

%D0%BF

对我来说看起来不错但打印出来

  

п

对应于字节数组

u'\xd0\xbf'

正确的编码似乎是

'c3 90 c2 bf'

提供正确的字节数组并正确打印

u'\u043f'

我猜我做错了所以问题是如何从

获得
u'\u043f'.encode("utf-8").encode("hex")
'd0bf'

0 个答案:

没有答案