我正在尝试使用Python程序发送电子邮件:
Receive and send emails in python
我已在localhost
上激活了本地Postfix SMTP服务器,并根据此处的说明验证了它是否处于活动状态:
http://www.phase2technology.com/node/667/
我将recipients
和sender
设置为我自己的电子邮件地址。该程序运行。但是,我没有收到任何邮件。
我读过我可能需要设置中继。我读到的例子是通过gmail。这是我需要做的吗?如果是这样,我该如何在OSX上执行此操作?
答案 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
文件中感到不舒服。