在OSX上使用Python和Postfix发送电子邮件

时间:2011-10-17 21:51:11

标签: python macos smtp postfix-mta

我正在尝试使用Python程序发送电子邮件:

Receive and send emails in python

我已在localhost上激活了本地Postfix SMTP服务器,并根据此处的说明验证了它是否处于活动状态:

http://www.phase2technology.com/node/667/

我将recipientssender设置为我自己的电子邮件地址。该程序运行。但是,我没有收到任何邮件。

我读过我可能需要设置中继。我读到的例子是通过gmail。这是我需要做的吗?如果是这样,我该如何在OSX上执行此操作?

2 个答案:

答案 0 :(得分:1)

您很可能需要设置中继。看看你是否在mailq命令中得到任何输出(如果发送消息不成功,这将显示你)。查看this article如何为postfix / osx设置智能主机,以及this article在后缀中使用gmail作为智能主机。

答案 1 :(得分:0)

实际上,如果可能的话,您可以直接使用smtp.gmail.com作为SMTP服务器而不是localhost,而不是通过gmail进行中继,而不是通过gmail进行中继。 / p>

您只需使用您的用户名/密码对其进行身份验证,如上面引用的SO问题所示,并使用:

session = smtplib.SMTP_SSL(server, port=465)

(端口465是gmail默认的SSL连接)

而不是

session = smtplib.SMTP(server)

另外,我使用算法对密码进行了编码,因为我对它只是裸露在.py文件中感到不舒服。