修改setting.py 加入郵箱配置html
1 EMAIL_USE_SSL = True #是否使用加密 2 3 EMAIL_HOST = 'smtp.qq.com' #smtp服務器, 若是是 163 改爲 smtp.163.com 4 5 EMAIL_PORT = 465 #465對應QQ郵箱SMPT的端口,不能改 6 7 EMAIL_HOST_USER = "1316843429@qq.com" 8 9 EMAIL_HOST_PASSWORD = "bbrpcgvidvwficda" #受權碼 10 11 DEFAULT_FROM_EMAIL = EMAIL_HOST_USER #默認郵件發送人
普通郵件發送django
1 from django.core.mail import send_mail 2 from django.conf import settings 3 4 def test_email(req): 5 title = '來自Django的問候' #郵件標題 6 msg = 'It is our choices that show what we truly are, far more than our abilities. ——J·K·羅琳 ' #郵件內容 7 receivers = [ 8 'wusir666666@163.com', 9 '1933972786@qq.com' 10 ] #收件人列表 11 email_from = settings.DEFAULT_FROM_EMAIL #發件人 12 send_mail(title,msg,email_from,receivers) #郵件發送 13 return HttpResponse('ok')
模板郵件發送服務器
views函數:ide
1 from django.template import loader 2 from django.core.mail import send_mail 3 4 def send_html(req): 5 tilte = '名著' # 郵件標題 6 template = loader.get_template('email_template.html') #模板加載 7 template_str = template.render({'title':'名著','url':'https://www.juzimi.com/ju/49719'}) #模板渲染 8 receivers = [ 9 'wusir666666@163.com', 10 '1933972786@qq.com' 11 ] #收件人列表 12 email_from = settings.DEFAULT_FROM_EMAIL #發件人 13 send_mail(tilte,'',email_from,receivers,html_message=template_str) #郵件發送 14 return HttpResponse('已發送')
模板函數:函數
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>{{ title }}</title> 6 </head> 7 <body> 8 <h3>你覺得,我能夠很迅速的恢復過來,有些自私的覺得。<br> 9 從陰雨走到豔陽,我路過泥濘、路過風。<br> 10 一路走來,你未曾懂我,我亦未曾怪你。<br> 11 我不是爲了顯示本身的大度,<br> 12 也不是爲了體現本身的大方。<br> 13 只想讓你知道,感情不在,責備也不存在。</h3> 14 <a href="{{ url }}">{{ url }}</a> 15 <h1 style="color: red">名著摘抄</h1> 16 </body> 17 </html>
郵件加附件發送加密
1 from django.core.mail import EmailMessage 2 from django.conf import settings 3 4 def file_email(req): 5 title = '悲慘世界' #郵件標題 6 msg = ' 他安息了。儘管命運多舛,他仍偷生。失去了他的天使他就喪生;事情是天然而然地發生,就如同夜幕降臨,白日西沉。' # 郵件內容 7 receivers = [ 8 'wusir666666@163.com', 9 '1933972786@qq.com' 10 ] #收件人列表 11 email_from = settings.DEFAULT_FROM_EMAIL #發件人 12 message = EmailMessage(title,msg,email_from,receivers) 13 file_path = os.path.join(settings.STATICFILES_DIRS[0],'10.jpg') 14 # 加載附件路徑,attach_file多個就能夠添加多個附件 15 message.attach_file(file_path,mimetype='image/jpg') #將郵件內容和附件打包到message 16 message.send() #發送打包好的郵件 17 return HttpResponse('郵件已發送')
多封郵件發送url
1 from django.core.mail import send_mass_mail 2 from django.conf import settings 3 4 def send_many_msg(req): 5 receivers = [ 6 'wusir666666@163.com', 7 '1933972786@qq.com' 8 ] #收件人列表 9 email_from = settings.DEFAULT_FROM_EMAIL #發件人 10 msg1 = ('標題','得之我幸,失之我命,如此而已。 ——徐志摩',email_from,receivers) 11 msg2 = ('仍是標題','最是那一低頭的溫柔,恰似一朵水蓮花不勝涼風的嬌羞 。——徐志摩',email_from,receivers) #打包好的兩封郵件 12 send_mass_mail((msg1,msg2)) #發送郵件 13 return HttpResponse('OKK')