Python Django发送电子邮件
在PHP中,我只需调用Python Django发送电子邮件,python,django,email,Python,Django,Email,在PHP中,我只需调用mail()即可发送电子邮件。在Django中,我需要指定SMTP后端和其他内容 有没有更简单的方法从Django发送电子邮件?在Django.core.mail模块中有几个很好的邮件发送功能 有关教程,请参见: 虽然Python使发送电子邮件成为可能 通过smtplib相对容易 Django提供了几个 轻包装在它上面。这些包装纸 用于发送电子邮件 速度更快,便于测试 在开发过程中发送电子邮件,以及 为以下平台提供支持: 无法使用SMTP 最适合您用途的最简单功能是: se
mail()
即可发送电子邮件。在Django中,我需要指定SMTP后端和其他内容
有没有更简单的方法从Django发送电子邮件?在
Django.core.mail
模块中有几个很好的邮件发送功能
有关教程,请参见:
虽然Python使发送电子邮件成为可能
通过smtplib相对容易
Django提供了几个
轻包装在它上面。这些包装纸
用于发送电子邮件
速度更快,便于测试
在开发过程中发送电子邮件,以及
为以下平台提供支持:
无法使用SMTP
最适合您用途的最简单功能是:
send_mail(
subject,
message,
from_email,
recipient_list,
fail_silently=False,
auth_user=None,
auth_password=None,
connection=None)
在PHP中,只能在非Windows系统上使用简单的mail()命令发送邮件。他们希望安装和正确配置本地MTA-like-Postfix,大多数web服务器都应该如此。如果您想依赖第三方或分散的邮件服务,则取决于电子邮件对您的应用程序的重要性。严重依赖快速可靠的电子邮件传输通常会导致通过SMTP将邮件发送到中央邮件服务器(“大管道”) 不过,如果您希望使用与PHP中相同的函数,请尝试以下方法:
import subprocess
def send_mail(from_addr, to_addr, subject, body):
cmdline = ["/usr/sbin/sendmail", "-f"]
cmdline.append(from_addr)
cmdline.append(to_addr)
mailer = subprocess.Popen(cmdline, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
dialog = "From: %s\nTo: %s\nSubject: %s\n\n%s\n.\n" % (from_addr, to_addr, subject, body)
return mailer.communicate(dialog)
然后像这样使用它:
发送邮件(“我”、“收件人”、“主题”、“邮件正文”)
无论哪种方式,您都需要一些后端(阅读MTA)。在我的脑海中,我能想到两件事:
“邮件是使用电子邮件主机和电子邮件端口设置中指定的SMTP主机和端口发送的。”??您需要指定谁将发送您的电子邮件-如果在某些位置未配置某种SMTP服务器以发送电子邮件,即使PHP也无法发送电子邮件。好的,我在PHP.ini中找到了相关信息,但是现在发送电子邮件的速度非常慢。您不必在PHP中指定SMTP设置的唯一原因是,其他人在安装Web服务器时已经为您完成了这项工作。所有电子邮件都通过SMTP发送。唯一的问题是哪个SMTP服务器将接受来自客户端的连接,以及客户端如何向服务器进行身份验证。您当地的系统管理员应该能够在大约10秒内提供此信息。(好的,可能20秒。)好的,我在php.ini中找到了信息,但现在发送电子邮件非常慢。你是如何衡量它非常慢的?我发送表单并等待10-15秒,直到页面加载