Как я могу конвертировать электронные письма HTML в обычный текст с fetchmail?
Недавно я настроил почтовый шлюз для нашего баг-трекера, который изначально предназначался для оптимизации отчетов об ошибках с нашего серверного программного обеспечения. Я рассказал об этом своим коллегам, и они также были счастливы иметь эту функцию, но я с ужасом обнаружил злоупотребление моей плохой системой, вызванное электронной почтой окружения.
Во-первых, адрес электронной почты отправителя выглядит ужасно искаженным, например: "Имя =?ISO-8859-1?B?TGp1bmdzdHL2bQ==?=" ". Тело письма - это вложение в формате HTML, конечно, с ненужным количеством дополнительного кода. Вложения особенно раздражают, так как они отображаются в виде вложений в трекере ошибок, а тело заявки пусто.
Я немного погуглил, но нашел только решения, предлагающие огромные уродливые скрипты на awk или perl, которые кажутся не обслуживаемыми и не достаточно надежными, чтобы учесть все возможные крайние случаи для внешнего вида HTML.
Что является лучшим решением здесь?
Нашей целевой платформой является Windows Server, и я бы предпочел что-то на Python, но у нас есть установка Cygwin, и поэтому мы можем использовать другие утилиты Unix, если это будет необходимо.
2 ответа
Если вы исследуете свой вопрос с fetchmail
в виду, что вы не найдете хороших ответов. Это потому fetchmail
это не инструмент для вашей работы.
Как часто задаваемые вопросы Fetchmail говорят:
Повторяйте за мной: работа fetchmail - это транспорт, а не политика.
В таких случаях большинство людей используют fetchmail
вместе с procmail
, Проще всего было бы передать вам сообщения через html2txt
как объяснено здесь.
Если вы никогда не работали с procmail
не бойся procmail
это ужасно, но если вы сохраняете вещи простыми, это не так уж плохо.
fetchmail
только для получения почты, так же, как говорит ее имя.
В системах Unix большинство людей используют procmail
для обработки электронной почты. Вы можете написать рецепт, который проверяет /<html/i
и передает сообщение через w3m -dump
(или же lynx -dump
или что угодно). Я не уверен, существует ли подобное для Windows...
(Я бы тоже сделал procmail
ответить с учебником по отключению HTML.)