连接到 IMAP 服务器,更改到特定文件夹,计算消息中的字符串数量

连接到 IMAP 服务器,更改到特定文件夹,计算消息中的字符串数量

我们有一个外部系统,它有时会发生故障。我们无法直接访问此系统的日志,我们收到的只是发送到收件箱的每日状态邮件,表明失败或成功。现在我们试图实现的是计数失败和成功消息,以某种方式衡量可靠性。

如果我们能够访问日志,使用 grep 和 wc 之类的工具会相当容易。但我们只有一堆邮件。

现在问题是:有人能想出一种方法来连接到 imap 服务器,转到特定文件夹,获取所有消息并计算某个字符串吗?(最好是 bash、python 或 perl)。我们不期望确切的命令。一些让我们入门的想法会很棒。

答案1

我会使用 Python 和 imaplib。此 imaplib 示例连接到邮箱并检索所有消息。消息正文在该循环中可用,因此您可以对其执行任何您想要的模式匹配。您甚至可以(尽管很浪费)运行此脚本并在其上使用您熟悉的工具。(我说“尽管很浪费”是因为示例脚本每次运行时都会读取邮箱中的所有消息。)

相关内容