我从我的一个客户通过 xmlrpc 获得的字符串有问题。他向我发送了编码两次的utf8字符串:(所以当我在python中获取它们时,我有一个必须再解码一次的unicode对象,但显然python不允许这样做。我注意到我的客户但是我需要在他修复它之前立即做快速解决方法。
来自 tcp 转储的原始字符串:
<string>Rafa\xc3\x85\xc2\x82</string>
这被转换为:
u'Rafa\xc5\x82'
我们得到的最好的是:
eval(repr(u'Rafa\xc5\x82')[1:]).decode("utf8")
这会产生正确的字符串,即:
u'Rafa\u0142'
然而,这很丑陋,不能在生产代码中使用。如果有人知道如何以更合适的方式解决此问题,请写信。谢谢,克里斯