Мое приложение написано на python. Что я делаю, так это запускаю скрипт для каждого письма, полученного postfix, и что-то делаю с содержимым письма. Procmail отвечает за запуск сценария, принимая электронную почту в качестве входных данных. Проблема началась, когда я преобразовывал входное сообщение (может быть текстовое) в объект email_message (потому что последний пригодится). Я использую email.message_from_string (где email - это почтовый модуль по умолчанию, поставляется с python).
import email
message = email.message_from_string(original_mail_content)
message_body = message.get_payload()
Этот message_body иногда возвращает список [экземпляр email.message.Message, экземпляр email.message.Message] и иногда возвращает строку (фактическое содержимое тела входящей электронной почты). Почему это. И даже я нашел еще одно наблюдение. Когда я просматривал документную строку email.message.Message.get_payload (), я обнаружил это ..
«»»
Полезная нагрузка будет либо объектом списка, либо строкой.
объект списка, вы изменяете полезную нагрузку сообщения на месте ..... "" "
Так, как у меня есть универсальный метод, чтобы получить тело письма через python? Пожалуйста, помогите мне.