【问题标题】:How do I read/retrieve emails received by local postfix, through python [closed]如何通过python读取/检索本地postfix收到的电子邮件[关闭]
【发布时间】:2010-10-05 04:13:45
【问题描述】:

我在我的生产服务器中使用 postfix,它将接收与 mydomain.com 相关的所有电子邮件在这种情况下,我只想将与少数用户相关的电子邮件转发到不同的电子邮件地址。我的意思是,假设我是超级用户(superuser@mydomain.com)。我想将我所有的电子邮件(所有带有 to:superuser@mydomain.com 的邮件)转发到我的个人电子邮件 ID:superuser@gmail.com。所以我想我会在这里需要一些编程逻辑。所以我想编写一个自定义 python 脚本,它应该读取后缀电子邮件收件箱并根据上述标准转发所有新电子邮件。我可以这样做吗?我在后缀领域听说过 .forward 文件。我可以用它来达到同样的效果吗(完全绕过 pythonic 解决方案)?

【问题讨论】:

  • 这个六年前的问题是如何重现的?

标签: python email smtp postfix-mta mailing


【解决方案1】:

听起来您只需要设置别名,而不是编写任何脚本。

在大多数 Unix/Linux 系统上,您只需在 /etc/aliases 文件中添加别名:

superuser:                 marc,webmaster@my-site.com

然后运行:

newaliases

然后发送给“超级用户”的邮件将转到“marc”和“webmaster@my-site.com”。

这是tutorial,这是后缀“别名”man page。

【讨论】:

  • 我举的例子(超级用户)有点误导。超级用户不是 unix 系统的超级用户。它实际上是站点(mydomain)用户。所以我将在我的生产机器上收到任何“@mydomain.com”的电子邮件,我需要将一些电子邮件转发到他们相应的个人电子邮件 ID。现在告诉我
  • 对 - 假设您要将进入 steven@mydomain.com 的电子邮件转发到 joeblow@gmail.com。在 mydomain.com 的邮件服务器上,将“steven: joeblow@gmail.com”添加到 /etc/aliases,然后运行 ​​newaliases。仅此而已。
【解决方案2】:

Procmail 是邮件过滤的解决方案。如果需要更多脚本,可以从 .procmailrc 调用 python 脚本。

【讨论】:

  • 假设我从 .procmailrc 调用 python 脚本,如何在当前电子邮件/或在这种情况下,在总收件箱上运行我的 python 逻辑。更具体地说,我如何获得触发 python 程序的上下文?我的意思是,我可以得到负责触发 python 脚本的邮件吗?
  • 我明白了。邮件消息将作为标准输入提供给我的 python 脚本。所以 .procmailrc 文件的最后一行将是“| python privilege_emailer.py”对吗?但我试过了,python脚本没有运行。我可以知道为什么吗?
猜你喜欢
  • 2011-07-15
  • 2016-12-27
  • 2017-02-25
  • 2013-07-05
  • 1970-01-01
  • 2013-12-19
  • 1970-01-01
  • 2011-01-16
  • 2011-04-29
相关资源
最近更新 更多