Анализ переадресованной электронной почты на Python / Любой другой язык?

1

У меня есть несколько писем в формате txt, которые были отправлены несколько раз.

Я хочу извлечь содержимое/основную часть почты. Это должно быть на последней позиции в иерархии. Верно? (Кто-то это указывает, если я ошибаюсь).

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

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

Если есть простой или простой способ/модуль с любым другим языком (я сомневаюсь), сообщите мне об этом!

Любая помощь высоко ценится!

Теги:
email
parsing

2 ответа

0
Лучший ответ

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

Конечно. Посмотрите документацию и примеры Python. В частности, посмотрите методы walk и payload.

  • 0
    Я сделал. Может я ошибся? Извините, я все еще новичок. Но когда я делаю get_payload (), он просто возвращает всю электронную почту, как это было с заголовками и прочим.
  • 0
    В документации модуля есть несколько примеров, показывающих, как обрабатывать содержимое сообщения. Модуль также предоставляет несколько полезных итераторов, которые выполняют похожие вещи другим способом.
Показать ещё 2 комментария
0

Попробуйте get_payload на анализируемом объекте Message. Если есть только одно сообщение, тип возврата будет строкой, иначе это будет список объектов Message.

Что-то вроде этого:

messages = parsed_message.get_payload()
while type(messages) <> Types.StringType:
    messages = messages[-1].get_payload()
  • 0
    да, это список объектов сообщений. У этого есть два элемента, один с заголовками и сообщением в простом тексте. Другие с сообщениями и HTML-тегами и заголовками. Ни одно из них не является текстовым сообщением.
  • 0
    Я подозреваю, что пересылки не являются отдельными частями MIME, так что для анализатора это все одно сообщение.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню