python實現發送郵件
本文用163郵箱進行了測試,python用的是3.8版本進行的測試
1.設置郵箱,如下圖所示設置完成后,添加如下代碼:
# coding:utf-8 #強制使用utf-8編碼格式import smtplib # 加載smtplib模塊from email.mime.text import MIMETextfrom email.utils import formataddrfrom email.header import Header #需要設置的內容如下所示:my_sender = ’[email protected]’ # 發件人郵箱賬號,為了后面易于維護,所以寫成了變量my_user = ’[email protected]’ # 收件人郵箱賬號,為了后面易于維護,所以寫成了變量my_authorization_code = ’*********’ #在開啟SMTP時的授權碼my_smtp = ’smtp.163.com’ #163的SMTP服務my_smtp_port = 25 #163的SMTP服務的端口號 def mail(): ret = True try: msg = MIMEText(’我是測試內容’, ’plain’, ’utf-8’) msg[’From’] = formataddr(['username', my_sender]) # 括號里的對應發件人郵箱昵稱、發件人郵箱賬號 msg[’To’] = formataddr(['你的名稱', my_user]) # 括號里的對應收件人郵箱昵稱、收件人郵箱賬號 subject = ’Python SMTP 郵件測試’ msg[’Subject’] = Header(subject, ’utf-8’) server = smtplib.SMTP(my_smtp, my_smtp_port) # 發件人郵箱中的SMTP服務器,端口是25 server.login(my_sender, my_authorization_code) # 括號中對應的是發件人郵箱賬號、在開啟SMTP時的授權碼 server.sendmail(my_sender, my_user, msg.as_string()) # 括號中對應的是發件人郵箱賬號、收件人郵箱賬號、發送郵件 server.quit() # 這句是關閉連接的意思 except Exception: # 如果try中的語句沒有執行,則會執行下面的ret=False ret = False return ret ret = mail()if ret: print('發送郵件成功!') # 如果發送成功,稍等20秒左右就可以收到郵件else: print('發送郵件失敗')
運行后收到郵件后,表示成功運行。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。
相關文章:
1. vue-drag-chart 拖動/縮放圖表組件的實例代碼2. vue使用moment如何將時間戳轉為標準日期時間格式3. Android studio 解決logcat無過濾工具欄的操作4. 什么是Python變量作用域5. js select支持手動輸入功能實現代碼6. PHP正則表達式函數preg_replace用法實例分析7. Android Studio3.6.+ 插件搜索不到終極解決方案(圖文詳解)8. bootstrap select2 動態從后臺Ajax動態獲取數據的代碼9. Android 實現徹底退出自己APP 并殺掉所有相關的進程10. 一個 2 年 Android 開發者的 18 條忠告
