Decodificando o utf8 codificado duplo em Python

Eu tenho um problema com seqüências de caracteres que recebo de um dos meus clientes sobre xmlrpc. Ele envia-me cordas utf8 que são codificadas duas vezes :( assim quando eu as obtenho em python eu tenho um objeto unicode que tem que ser decodificado mais uma vez, mas obviamente python não permite isso. Eu notei meu cliente no entanto eu preciso para fazer uma rápida solução por enquanto antes de corrigi-lo.

Corda bruta do despejo de tcp:

<string>Rafa\xc3\x85\xc2\x82</string>

isso é convertido em:

u'Rafa\xc5\x82'

O melhor que conseguimos é:

eval(repr(u'Rafa\xc5\x82')[1:]).decode("utf8") 

Isso resulta na string correta, que é:

u'Rafa\u0142' 

isso funciona, no entanto, é feio pra caramba e não pode ser usado no código de produção. Se alguém souber como corrigir este problema de maneira mais adequada, por favor escreva. Obrigado, chris

questionAnswers(3)

yourAnswerToTheQuestion