如何使用python -m smtpd发送邮件?
我有一个Django应用程序。在我的开发环境中,这个应用在我的Mac OSX 10.9.3笔记本上运行。这个应用需要发送电子邮件。所以现在我使用以下的Python程序来模拟一个邮件服务器。
python -m smtpd -n -c DebuggingServer localhost:1025
这个邮件服务器只是把邮件内容打印到屏幕上,然后就把这些邮件丢掉了。
我希望这个服务器能够真正发送邮件,而不仅仅是把它们打印出来。有人能告诉我该怎么做吗?
1 个回答
1
DebuggingServer
只是把信息显示在标准输出上,也就是你在控制台上能看到的地方。你可以查看这个链接了解更多内容:https://docs.python.org/2/library/smtpd.html#debuggingserver-objects
创建一个新的调试服务器。参数和SMTPServer一样。消息会被丢弃,并打印在标准输出上。
如果你想直接把邮件发送到互联网,你需要通过一个配置好的邮件传输代理(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