這篇文章將為大家詳細(xì)講解有關(guān)如何在python中利用smtplib模塊發(fā)送郵件,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。
站在用戶的角度思考問題,與客戶深入溝通,找到云龍網(wǎng)站設(shè)計(jì)與云龍網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都做網(wǎng)站、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊(cè)、網(wǎng)絡(luò)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋云龍地區(qū)。1)使用smtplib模塊發(fā)送簡單郵件
步驟:
1.連接SMTP服務(wù)器,并使用用戶名、密碼登陸服務(wù)器
2.創(chuàng)建EmailMessage對(duì)象,該對(duì)象代表了郵件本身
3.調(diào)用sendmail()方法發(fā)送郵件
示例:
我用自己的QQ郵箱(英文地址)給自己(原始地址)發(fā)一封郵件(QQ郵箱需要授權(quán)碼(詳見))
smtplib.SMTP() 代表的普通SMTP連接(默認(rèn)端口21)
smtplib.SMTP_SSL() 代表基于SSL的SMTP連接(默認(rèn)端口456,安全)
import smtplib import email.message fromaddr = 'wk_helloworld@qq.com' # 賬號(hào) password = '****************' # QQ授權(quán)碼 conn = smtplib.SMTP_SSL('smtp.qq.com', 465) # 創(chuàng)建SMTP連接 conn.login(fromaddr, password) # 登錄郵件服務(wù)器 msg = email.message.EmailMessage() # 創(chuàng)建郵件對(duì)象 msg.set_content('您好,Python郵件') # 設(shè)置郵件內(nèi)容(普通郵件) conn.sendmail(fromaddr, ['929667257@qq.com'], msg.as_string()) # 發(fā)送郵件 conn.quit() # 退出連接
2)發(fā)送內(nèi)容完整的郵件
為郵件設(shè)置標(biāo)題、發(fā)件人名字、收件人名(設(shè)置 EmailMessage 對(duì)象對(duì)應(yīng)的屬性)
EmailMessage的set_content() 方法的第二個(gè)參數(shù)設(shè)置為 html 可將郵件內(nèi)容改為 HTML 格式
import smtplib import email.message fromaddr = 'wk_helloworld@qq.com' password = '****************' conn = smtplib.SMTP_SSL('smtp.qq.com', 465) conn.login(fromaddr, password) msg = email.message.EmailMessage() msg.set_content('<h3>HTML郵件<h3>' + '<div >HTML郵件內(nèi)容</div>', 'html', 'UTF-8') msg['subject'] = 'HTML郵件' msg['from'] = '癡迷<%s>' % fromaddr msg['to'] = '淡然<%s>' % '929667257@qq.com' conn.sendmail(fromaddr, ['929667257@qq.com'], msg.as_string()) conn.quit()
3)發(fā)送圖文并茂的郵件
在郵件中插入圖片,需要先調(diào)用 EmailMessage 的 add_attachment() 方法來添加附件,該方法參數(shù):
maintype:指定附件的主要類型
subtype:指定附件的子類型
filename:指定該附件的文件名
cid=img:指定該附件的資源 ID
通過<img…/>元素來插入附件中的圖片(引用附件的cid屬性)
import smtplib import email.message import email.utils fromaddr = 'wk_helloworld@qq.com' password = '****************' toaddr = '929667257@qq.com' conn = smtplib.SMTP_SSL('smtp.qq.com', 465) conn.login(fromaddr, password) msg = email.message.EmailMessage() first_id = email.utils.make_msgid() msg.set_content('<h3>HTML郵件<h3>' + '<div >html郵件內(nèi)容</div>' + '<img src="cid:' + first_id[1:-1] + '">', 'html', 'UTF-8') msg['subject'] = 'HTML郵件' msg['from'] = 'wk<%s>' % fromaddr msg['to'] = 'k<%s>' % toaddr # 添加附件 with open('圖1.jpg', 'rb') as f: # 附件指定cid后,郵件正文可通過該cid來引用該圖片 msg.add_attachment(f.read(), maintype='image', subtype='jepg', filename='test1.jpg', cid=first_id) with open('圖2.jpg', 'rb') as f: msg.add_attachment(f.read(), maintype='image', subtype='jepg', filename='test2.jpg') # with open('圖3.gif', 'rb') as f: # msg.add_attachement(f.read(), maintype='image', subtype='gif', filename='test.jpg') conn.sendmail(fromaddr, [toaddr], msg.as_string()) conn.quit()
關(guān)于如何在python中利用smtplib模塊發(fā)送郵件就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。
文章名稱:如何在python中利用smtplib模塊發(fā)送郵件-創(chuàng)新互聯(lián)
URL鏈接:http://aaarwkj.com/article44/dppeee.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、軟件開發(fā)、品牌網(wǎng)站設(shè)計(jì)、網(wǎng)站排名、動(dòng)態(tài)網(wǎng)站、電子商務(wù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容