這篇文章主要介紹python3怎么實現SMTP發送郵件,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
成都創新互聯公司專注于企業營銷型網站、網站重做改版、棲霞網站定制設計、自適應品牌網站建設、H5頁面制作、商城系統網站開發、集團公司官網建設、成都外貿網站制作、高端網站制作、響應式網頁設計等建站業務,價格優惠性價比高,為棲霞等各大城市提供網站開發制作服務。1、簡單易用,與C/C++、Java、C# 等傳統語言相比,Python對代碼格式的要求沒有那么嚴格;2、Python屬于開源的,所有人都可以看到源代碼,并且可以被移植在許多平臺上使用;3、Python面向對象,能夠支持面向過程編程,也支持面向對象編程;4、Python是一種解釋性語言,Python寫的程序不需要編譯成二進制代碼,可以直接從源代碼運行程序;5、Python功能強大,擁有的模塊眾多,基本能夠實現所有的常見功能。
SMTP協議
??首先了解SMTP(簡單郵件傳輸協議),郵件傳送代理程序使用SMTP協議來發送電郵到接收者的郵件服務器。SMTP協議只能用來發送郵件,不能用來接收郵件,而大多數的郵件發送服務器都是使用SMTP協議。SMTP協議的默認TCP端口號是25。
環境調試
??上面說了是使用SMTP協議發送的郵件,所以需要先查看你的發件人郵箱是否有開啟SMTP協議,如沒有,則需要開啟,我測試使用的是163.com的郵箱作為發信人郵箱,在設置中開啟SMTP協議如下圖所示。
??測試的前提是你需要開通客戶端授權,開通后會讓你設置密碼,那個密碼要記好,下面的passwd接收的是授權密碼而不是郵箱密碼!否則會出現下圖所示的錯誤提示:
Demo
import smtplib from email.header import Header from email.mime.text import MIMEText # 第三方 SMTP 服務 mail_host = "smtp.163.com" # SMTP服務器 mail_user = "***" # 用戶名 mail_pass = "***" # 授權密碼,非登錄密碼 sender = ***@163.com' # 發件人郵箱(最好寫全, 不然會失敗) receivers = [***@qq.com'] # 接收郵件,可設置為你的QQ郵箱或者其他郵箱 content = '我用Python' title = '人生苦短' # 郵件主題 def sendEmail(): message = MIMEText(content, 'plain', 'utf-8') # 內容, 格式, 編碼 message['From'] = "{}".format(sender) message['To'] = ",".join(receivers) message['Subject'] = title try: smtpObj = smtplib.SMTP_SSL(mail_host, 465) # 啟用SSL發信, 端口一般是465 smtpObj.login(mail_user, mail_pass) # 登錄驗證 smtpObj.sendmail(sender, receivers, message.as_string()) # 發送 print("mail has been send successfully.") except smtplib.SMTPException as e: print(e) def send_email2(SMTP_host, from_account, from_passwd, to_account, subject, content): email_client = smtplib.SMTP(SMTP_host) email_client.login(from_account, from_passwd) # create msg msg = MIMEText(content, 'plain', 'utf-8') msg['Subject'] = Header(subject, 'utf-8') # subject msg['From'] = from_account msg['To'] = to_account email_client.sendmail(from_account, to_account, msg.as_string()) email_client.quit() if __name__ == '__main__': sendEmail() # receiver = '***' # send_email2(mail_host, mail_user, mail_pass, receiver, title, content)
剛開始測試時,第一次發送郵件是成功的,但是后面再次測試時卻出現了提示554,根據給出的網址查看錯誤代碼
554 DT:SPM 發送的郵件內容包含了未被許可的信息,或被系統識別為垃圾郵件。請檢查是否有用戶發送病毒或者垃圾郵件。如下圖所示:
以上是“python3怎么實現SMTP發送郵件”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注創新互聯成都網站設計公司行業資訊頻道!
另外有需要云服務器可以了解下創新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
文章題目:python3怎么實現SMTP發送郵件-創新互聯
URL鏈接:http://vcdvsql.cn/article32/ccchsc.html
成都網站建設公司_創新互聯,為您提供外貿網站建設、手機網站建設、用戶體驗、關鍵詞優化、網站策劃、電子商務
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯