1. 程式人生 > >Flask Web開發學習之爬坑(四)

Flask Web開發學習之爬坑(四)

關於第6章 電子郵件

這一章把我坑了好久好久,真的是印象深刻。

文章中的示例是通過 goolemail 傳送郵件,我把它換成了常用的qq郵箱。

本節內容有點多,不過很多都是有用的。

示例6-1


需要修改

app.config['MAIL_SERVER'] = 'smtp.qq.com'                 # qq郵箱                        
app.config['MAIL_USERNAME'] = '你的qq帳號@qq.com'
app.config['MAIL_PASSWORD'] = '授權登入密碼'

示例6-3中


需要修改

app.config['FLASKY_MAIL_SENDER'] = 'Flasky Admin <你的帳號,與上同@qq.com>'
app.config['FLASKY_ADMIN'] = '你的qq帳號@qq.com'
msg = Message(app.config['FLASKY_MAIL_SUBJECT_PREFIX'] + subject,
    sender=app.config['MAIL_USERNAME'], recipients=['目標qq帳號@qq.com'])

注意:

mail = Mail(app)

必須放在上面的所有 app.configXXXXX 後面。

現在來講講如何獲取上面所講到的授權登入密碼。

進入郵箱,點選設定


點選帳戶,


我這裡是已經開啟了的,一般是關閉的,點選開啟後按照提示步驟做,會獲得一個 授權登入密碼


再講一講示例6-3中的msg.body 與 msg.html。

在示例l6-3中這兩句可以不寫,如果不寫,那麼傳送的郵件沒有內容,像這樣。


也可以任意寫一句,不過在寫之前,必須在templates目錄下新建mail/new_user.txt 和 mail/new_user.html,因為在

示例6-4中指定了這個目錄檔案,至於txt和html檔案都有,可以仔細看看上面6-1的圖中msg.body和msg.html的內容。


msg.body和msg.html意思是你可以從txt檔案和html檔案中任意選一種當做郵件內容傳送,經4我測試,兩種都寫,只會傳送其中一種。

例:

只發送msg.body,


new_user.txt中寫



只發送html

new_user.html中寫



msg.body和msg.html都寫,不管msg.body放在msg.html前面還是後面,都只發送msg.html的內容。