Reading EmailMessage from file
cs at cskk.id.au
Sun Jul 15 20:48:21 EDT 2018
On 15Jul2018 23:34, Jon Ribbens <jon+usenet at unequivocal.eu> wrote:
>On 2018-07-15, Skip Montanaro <skip.montanaro at gmail.com> wrote:
>> I have an email message in a file (see attached).
>Attachments don't work here.
>> something like this should construct an email message from the file:
>>>>> from email.message import EmailMessage
>>>>> msg = EmailMessage()
>>>>> fp = open("/home/skip/tmp/79487694")
>What are you actually trying to do? You're talking like you're trying
>to read an existing RFC822 email-with-headers from a file, but you're
>showing code that creates a new email with body content set from
>a file, which is a completely different thing.
Also, RFC822 messages tend not to be Unicode themselves, _or_ ISO8859-1. Email
message file tend to be 7-bit ASCII, with a (small, well defined) variety of
methods for passing other text encodings though that form.
When I read a mail message from a file I do it like this:
msg = email.parser.Parser().parse(msgfile, headersonly=headersonly)
where `msgfile` is an open file (just "open(pathname, errors='replace')"). That
returns a Message object.
Cameron Simpson <cs at cskk.id.au> (formerly cs at zip.com.au)
More information about the Python-list