如何使用python -m smtpd实际发送电子邮件?

时间:2014-08-04 03:15:38

标签: python macos email smtpd

我有一个Django应用程序。在我的开发环境中,该应用程序在我的Mac OSX 10.9.3笔记本电脑上运行。此应用程序需要发送电子邮件。所以现在我使用以下python进程来模拟电子邮件服务器。

python -m smtpd -n -c DebuggingServer localhost:1025

此电子邮件服务器只是将电子邮件消息输出到标准输出,然后将消息抛弃。

我希望这台服务器能够实际发送电子邮件而不是将它们打印到stdout。 有人可以建议怎么做吗?

1 个答案:

答案 0 :(得分:1)

DebuggingServer只显示stdout中的消息:https://docs.python.org/2/library/smtpd.html#debuggingserver-objects

Create a new debugging server. Arguments are as per SMTPServer. Messages will be discarded, and printed on stdout.

如果您想直接向互联网发送电子邮件,您必须通过已配置的MTA服务器发送电子邮件,您可以在Django内的settings.py中进行配置:

EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_USER = 'youremail@gmail.com'
EMAIL_HOST_PASSWORD = 'yourpassword'
EMAIL_PORT = 587

您可以在https://docs.djangoproject.com/en/dev/ref/settings/#email-backend

上阅读更多内容