У меня проблема со строками, которые я получаю от одного из моих клиентов по сравнению с 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'
это работает, однако, является уродливым, и не может быть использовано в производственном коде. Если кто-нибудь знает, как решить эту проблему более подходящим образом, напишите. Благодаря, Крис