Django 中的各類郵件發送

修改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  #默認郵件發送人
View Code

普通郵件發送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')
View Code

模板郵件發送服務器

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('已發送')
View Code

模板函數:函數

 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>
View Code

郵件加附件發送加密

 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('郵件已發送')
View Code

多封郵件發送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')
View Code
相關文章
相關標籤/搜索