最新在學習Python的基礎入門系列課程,今天學習到使用python 的內置庫smtplib發送郵件內容。
使用Python發送郵件步驟簡單:python
具體代碼以下:安全
import smtplib from email.message import EmailMessage # 定義SMTP郵件服務器地址 smtp_server = 'smtp.qq.com' # 郵件發送人郵箱 from_addr = '******@qq.com' # 本身的郵想 # 郵件發送人郵箱密碼 password = '******' # 郵箱密碼 # 郵件接收人 to_addr = '******@163.com' # 測試接收郵件地址郵箱 # 建立SMTP鏈接 conn = smtplib.SMTP_SSL(smtp_server, 465) # 設計調試級別 conn.set_debuglevel(1) # 登陸郵箱 conn.login(from_addr, password) # 建立郵件內容對象 msg = EmailMessage() # 設置郵件內容 msg.set_content('您好,這是一封來自Python的測試郵件', 'plain', 'utf-8') # 發送郵件 conn.sendmail(from_addr, [to_addr], msg.as_string()) # 退出鏈接 conn.quit()
運行上述代碼後,會報以下錯誤:服務器
smtplib.SMTPAuthenticationError: (535, b'Error: \xc7\xeb\xca\xb9\xd3\xc3\xca\xda\xc8\xa8\xc2\xeb\xb5\xc7\xc2\xbc\xa1\xa3\xcf\xea\xc7\xe9\xc7\xeb\xbf\xb4: http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=28&&no=1001256')
點擊網址部分:http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=28&&no=1001256,會跳轉到騰訊郵箱的以下頁面學習
就是咱們在使用第三方客戶端登陸QQ郵箱時,爲了保證帳戶安全,須要使用說受權碼,在幫助中心中,點擊生成受權碼就能夠獲得騰訊郵箱給出的受權碼了。
而後,使用獲得的受權碼,替換下面登陸login方法中的password代碼,即便用用戶郵箱和受權碼登陸測試
conn.login(from_addr, "受權碼")
修改完成後,從新運行就不會出現以上錯誤,而且成功的發送郵件到了指定郵箱,能夠登陸收件郵箱已查看是否收到,也有可能在垃圾箱裏。ui
至此,Python使用smtplib發送郵件成功了。spa
歡迎你們關注個人公衆號:君偉說。debug