Buffers de protocolo do Google (protobuf) em Python3 - problemas com o ParseFromString (codificação?)

Eu tenho os buffers do protocolo do Google 80% trabalhando em Python3. Meu arquivo .proto funciona, estou codificando dados, a vida é quase boa. O problema é que não consigo ParseFromString o resultado de SerializeToString. Quando imprimo SerializeToString, parece com o que eu esperaria, uma representação binária bastante compacta (precedida por b ').

Meu palpite é que talvez essa seja uma diferença na maneira como Python2 e Python3 lidam com seqüências de caracteres. A putput de SerializeToString é Bytes, não uma sequência.

Saída impressa de SerializeToString (o tipo Python é):

b'\x10\xd7\xeb\x8e\xcd\x04\x1a\x0cnamegoeshere2@\x08\x80\xf8\xde\xc3\x9f\xb0\x81\x89\x14\x11\x00\x00\x00\x00\x00\x80d\xc0\x19\x00\x00\x00\x00\x00\xc0m@!\x00\x00\x00\x00\x00\x80R\xc0)\x00\x00\x00\x00\x00x\xb7\xc01\x00\x00\x00\x00\x00\x8c\x95@9\x00\x00\x00\x00\x00\x16\xb2@'

resultado de ParseFromString (mensagem):

None

Nenhum erro é fornecido ...

Então - meu melhor palpite é que tudo o que preciso fazer é .decode () o objeto de bytes gerado, o problema é que não tenho idéia do que é a codificação. Eu tentei UTF-8, -16, Latin-1 e alguns outros sem sucesso. Meu Google-Fu é forte, mas não encontrei nada sobre isso.

Qualquer ajuda seria apreciada.

questionAnswers(1)

yourAnswerToTheQuestion