On 23Dec2021 14:50, Skip Montanaro <skip.montan...@gmail.com> wrote: >I have a bunch of old email archives I'm messing around with, for example, >rendering them on-demand in HTML. Some of the files use quoted printable >content transfer encoding. Here's one (with a number of headers elided): [...] >This message is stored in a file. I read it using >email.message_from_file. >In the example above, the payload still retains the quoted printable bits. >Maybe it's not correctly encoded (no "=20" at the end of the second >paragraph, for example)
That seems legit, as it is a space in the message text. >, but I would have thought the email package would >do what it could to decode things, but nope: > >>>> print(msg.get_payload()) From the docs: get_payload(i=None, decode=False) Return the current payload, which will be a list of Message objects when is_multipart() is True, or a string when is_multipart() is False. [...] Optional decode is a flag indicating whether the payload should be decoded or not, according to the Content-Transfer-Encoding header. When True and the message is not a multipart, the payload will be decoded if this header’s value is quoted-printable or base64. Try decode=True. Cheers, Cameron Simpson <c...@cskk.id.au> -- https://mail.python.org/mailman/listinfo/python-list