如何使用 fetchmail 将 HTML 邮件转换为纯文本?

如何使用 fetchmail 将 HTML 邮件转换为纯文本?

我最近为我们的错误跟踪器设置了一个电子邮件网关,这原本是为了简化我们服务器软件的错误报告。我告诉了我的同事,他们也很高兴有这个功能,但我惊恐地发现我的糟糕系统受到了 entourage/outlook 电子邮件的滥用。

首先,发件人的电子邮件地址看起来乱七八糟,像“Name =?ISO-8859-1?B?TGp1bmdzdHL2bQ==?=" '。电子邮件正文是一个 HTML 附件,当然还包含了大量不必要的额外代码。这些附件特别烦人,因为它们在错误跟踪器中显示为票据附件,而票据正文是空的。

我进行了一些谷歌搜索,但只找到了建议的解决方案巨大丑陋的 awk 或 perl 脚本,它似乎既不可维护,也不够强大,无法解决 Outlook HTML 中所有可能出现的边缘情况。

这里有什么更好的解决方案?

我们的目标平台是 Windows 服务器,我更喜欢使用 Python,但是我们已经安装了 cygwin,因此可以在需要时使用其他 Unix 实用程序。

答案1

如果你带着fetchmail这种想法去研究你的问题,你不会找到好的答案。这是因为fetchmail它不适合你的工作。

作为Fetchmail 常见问题解答说:

跟我重复一遍:fetchmail 的工作是传输,而不是策略。

在这种情况下,大多数人的做法是fetchmail同时使用procmail最简单的方法就是通过管道向你发送消息html2txt就像解释的那样这里

如果您从未使用过procmail,请不要害怕。 procmail很糟糕,但如果您保持事情简单,那就不是太糟糕。

答案2

fetchmail仅用于获取邮件,正​​如其名称所示。

在 Unix 系统上,大多数人使用procmail它来处理电子邮件。您可以编写一个配方来检查/<html/i并通过管道传输消息w3m -dump(或lynx -dump任何您想要的东西)。但我不确定 Windows 上是否存在类似的东西……

(我还会procmail回复有关关闭 HTML 的教程。)

相关内容