Показать полный оригинальный источник электронного письма с Python - PullRequest
0 голосов
/ 10 января 2020

Основной ответ Чтение почтового содержимого файла mbox с использованием python mailbox показывает, как отобразить содержимое электронного письма из файла .mbox:

if message.is_multipart():
    content = ''.join(part.get_payload(decode=True) for part in message.get_payload())
else:
    content = message.get_payload(decode=True)

Однако это не показывает «полный исходный источник» письма; Я имею в виду то, что мы можем иметь почти во всех веб-письмах, нажимая «Показать исходное сообщение»:

Delivered-To: ...
Return-Path: ...
...

Как получить это с помощью Python mailbox?

enter image description here

1 Ответ

1 голос
/ 10 января 2020

Если message является объектом Python email.message.EmailMessage (или классом email.massage.Message прежней Python 3.5), просто вызовите его метод .as_string().

Метод полезной нагрузки достаточно специально извлекает только одну часть MIME.

...