Django簡單粗暴快速發送郵件!

》》儘管Python已經提供了相對易用的郵件發送模塊 smtplib ,但Django仍對其作了輕度的封裝。封裝後的模塊不只發送郵件速度快,並且在開發環境下也很容易對郵件發送進行測試, 並對沒法使用SMTP的平臺也提供了支持。

》》首先獲取郵箱受權碼(我使用的qq郵箱)

  1. 郵箱設置--->帳戶

  2. 找到---POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服務 開啓第一個

  3. 生成受權碼

  4. 在django應用程序中  settings.py中設置 

    EMAIL_USE_SSL = Truehtml

    EMAIL_HOST = 'smtp.qq.com'  # 若是是 163 改爲 smtp.163.compython

    EMAIL_PORT = 465django

    EMAIL_HOST_USER = '395945836@qq.com' # 賬號後端

    EMAIL_HOST_PASSWORD = 'jffbcdknmbzvbega'  # 密碼安全

    DEFAULT_FROM_EMAIL = EMAIL_HOST_USER服務器

  5. view.py導包   

    from django.core.mail import send_mail測試

     

  6. def封裝 發送郵件代碼執行

  send_mail('主題',"內容",'發送帳號',['接收帳號'], fail_silently=False)加密

 

 

  Django發郵件功能要用到配置文件中的 EMAIL_HOST 和 EMAIL_PORT 配置項,分別用來指定發郵件服務器和端口。 若是SMTP服務器須要用戶認證,還須設置 EMAIL_HOST_USER 和 EMAIL_HOST_PASSWORD 配置項,指定用戶名和密碼。 而 EMAIL_USE_TLS 配置項則決定是否使用安全加密連接。spa

  send(fail_silently=False) 發送郵件報文。若是在構造郵件時若是指定了某個連接(connection),就會使用該連接發郵件。 不然,就會使用默認後端的實例發郵件。若是關鍵字參數 fail_silently 爲 True ,就會忽略郵件發送時拋出的異常。htm

相關文章
相關標籤/搜索