Разбор многостраничных писем в python и сохранение вложений

Я новичок в Python и пытаюсь разобрать электронную почту из Gmail через imaplib и электронную почту python. Он работает неплохо, но у меня проблемы с вложениями электронной почты.

Я хотел бы проанализировать весь открытый текст из электронного письма, игнорируя любой HTML, который может быть вставлен в качестве вторичного типа содержимого, а также удалял и сохранял все другие вложения. Я пробовал следующее:

...imaplib connection and mailbox selection...

typ, msg_data = c.fetch(num, '(RFC822)')
        email_body = msg_data[0][1]
mail = email.message_from_string(email_body)
        for part in mail.walk():
            if part.get_content_type() == 'text/plain':
                body = body + '\n' + part.get_payload()
            else:
                continue

Это была моя первоначальная попытка просто взять части электронного письма с открытым текстом, но когда кто-то отправляет электронное письмо с текстовым вложением, содержимое текстового файла отображается для переменной 'body' выше.

Может ли кто-нибудь сказать мне, как я могу извлечь части электронного письма с открытым текстом, игнорируя вторичный HTML, который иногда присутствует, и при этом сохранять все другие типы файловых вложений в виде файлов? Прошу прощения, если в этом нет большого смысла. При необходимости я дополню вопрос дополнительными разъяснениями.

10
задан ajt 6 June 2011 в 16:37
поделиться