django发送邮件

本文介绍了如何在Django中配置参数并发送邮件,重点讲解了使用send_mass_mail一次性发送多个邮件以及通过EmailMultiAlternatives发送HTML内容和添加附件的方法。

1.配置参数

#本配置参数是腾讯企业邮箱,其它邮箱参数可能登陆邮箱看寻找帮助信息
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_USE_SSL = True #True表示采取安全加密方式,Flase反之
EMAIL_HOST = 'smtp.exmail.qq.com'
EMAIL_PORT = 465
EMAIL_HOST_USER = 'XXX@company.cn'#发送邮件邮箱
EMAIL_HOST_PASSWORD = 'abcd111'#发送邮件邮箱密码
DEFAULT_FROM_EMAIL = 'XXX@qq.cn'

2.发送邮件

2.1 发送单个邮件:


from django.core.mail import send_mail
send_mail('Subject here', 'Here is the message.', 'from@example.com',
['to@example.com'], fail_silently=False)

2.2 一次性发送多个邮件:

from django.core.mail import send_mass_mail
message1 = (‘Subject here’, ‘Here is the message’, ‘from@example.com’, [‘first@example.com’, ‘other@example.com’])
message2 = (‘Another Subject’, ‘Here is another message’, ‘from@example.com’, [‘second@test.com’])
send_mass_mail((message1, message2), fail_silently=False)

备注:send_mail 每次发邮件都会建立一个连接,发多封邮件时建立多个连接。而 send_mass_mail 是建立单个连接发送多封邮件,所以一次性发送多封邮件时 send_mass_mail 要优于 send_mail。

2.3 如果我们想在邮件中添加附件,发送 html 格式的内容

from django.conf import settings
from django.core.mail import EmailMultiAlternatives

from_email = settings.DEFAULT_FROM_EMAIL
//subject是邮件主题,content是邮件内容,to-addr是一个列表,发送给那些人
msg = EmailMultiAlternatives(subject, content, from_email, [to_addr])
msg.content_subtype = “html”
添加附件(可选)
msg.attach_file(‘./twz.pdf’)
发送
msg.send()

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值