您好,登錄后才能下訂單哦!
這篇文章主要為大家詳細介紹了python發送郵件的代碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
python如何發送郵件
使用郵箱測試時,必須得開啟郵箱的pop3/smtp服務,并找到郵箱正確的SMTP服務器地址以及端口。這里以QQ郵箱為例
1、打開QQ郵箱后,選擇“設置-賬戶”
2、拉動滾動條到下方
3、開啟pop3/smtp服務,并保存該授權碼作為密碼使用
4、編寫Python代碼
# 首先導入email模塊構造郵件 from email.mime.text import MIMEText # 構造郵件,內容為hello world msg = MIMEText('hello world') # 設置郵件主題 msg["Subject"] = "hello world" # 寄件者 msg["From"] = '' # 收件者 msg["To"] = '' # 然后是導入smtplib模塊發送郵件 import smtplib from_addr = raw_input("請輸入發送方郵箱賬號:") password = raw_input("請輸入發送方郵箱密碼(這里輸入的內容是開啟pop3/smtp服務時騰訊給出的授權碼):") # smtp服務器地址 smtp_server = 'smtp.qq.com' # 收件人地址 to_addr = raw_input("請輸入收件人地址:") try: # smtp協議的默認端口是25,QQ郵箱smtp服務器端口是465,第一個參數是smtp服務器地址,第二個參數是端口,第三個參數是超時設置,這里必須使用ssl證書,要不鏈接不上服務器 server = smtplib.SMTP_SSL(smtp_server, 465, timeout = 2) # 登錄郵箱 server.login(from_addr, password) #發送郵件,第一個參數是發送方地址,第二個參數是接收方列表,列表中可以有多個接收方地址,表示發送給多個郵箱,msg.as_string()將MIMEText對象轉化成文本 server.sendmail(from_addr, [to_addr], msg.as_string()) server.quit() print 'success' except Exception,e: print 'Faild:%s' % e
5、收到郵件
python3使用smtplib發送utf-8郵件時,提示UnicodeEncodeError,該如何解決:
不使用sendmail()方法,而是使用sendmsg()
不使用sendmail()方法 ser.sendmail(from_addr, to_addr, msg.as_string())
而是改為使用sendmsg() send_message(msg,mail_options=[],rcpt_options={},from_addr = None,to_addrs = None)
關于python發送郵件的代碼就分享到這里了,當然并不止以上和大家分析的辦法,不過小編可以保證其準確性是絕對沒問題的。希望以上內容可以對大家有一定的參考價值,可以學以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。