Django2 邮件功能发送
SMTP协议:SMTP(简单邮件传输协议),邮件传送代理程序使用SMTP协议来发送电邮到接收者的邮件服务器。SMTP协议只能用来发送邮件,不能用来接收邮件,而大多数的邮件发送服务器都是使用SMTP协议。SMTP协议的默认TCP端口号是25。
邮件类:smtplib
常用方法:
SMTP()函数: 初始化一个Smtp实例对象
比如:smtplib.SMTP()#创建SMTP对象
connect()函数:与远程邮件服务器连接
函数定义:connect(self, host='localhost', port=0)
host必填参数:远程邮件服务地址地址
port非必填参数:远程邮件服务器开放端口。默认25
login()函数:与远程邮件服务器进行用户登入认证
函数定义:login(self, user, password)
user:正确邮箱账户
password:163邮箱授权码或邮箱账户密码
sendmail函数:发送邮件函数
函数定义:sendmail(self, from_addr, to_addrs, msg, mail_options=[], rcpt_options=[])
from_addr:发送人
to_addr:接受人
msg:邮件内容
实例代码:
from email.header import Header
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
# 邮件发生
def send(request):
sender = 'zhouzhiwengang@163.com'
receiver = '769023183@qq.com'
smtpserver = 'smtp.163.com'
username = 'zhouzhiwengang@163.com'
password = 'wz201244'
mail_title = '主题:这是带附件的邮件'
# 创建一个带附件的实例
message = MIMEMultipart()
message['From'] = sender
message['To'] = receiver
message['Subject'] = Header(mail_title, 'utf-8')
# 邮件正文内容
message.attach(MIMEText('来来来,这是邮件的正文', 'plain', 'utf-8'))
smtpObj = smtplib.SMTP() # 注意:如果遇到发送失败的情况(提示远程主机拒接连接),这里要使用SMTP_SSL方法
smtpObj.connect(smtpserver)
smtpObj.login(username, password)
smtpObj.sendmail(sender, receiver, message.as_string())
print("邮件发送成功!!!")
smtpObj.quit()
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。