欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實(shí)現(xiàn)郵件發(fā)送功能的示例詳解

 更新時(shí)間:2022年11月10日 10:21:41   作者:許華添  
Python對(duì)SMTP支持有smtplib和email兩個(gè)模塊,email負(fù)責(zé)構(gòu)造郵件,smtplib負(fù)責(zé)發(fā)送郵件。本文將以qq郵箱為例,實(shí)現(xiàn)自己給自己發(fā)送郵件的功能,感興趣的可以了解一下

想實(shí)現(xiàn)發(fā)送郵件需要經(jīng)過以下幾步:

1、登錄郵件服務(wù)器

2、構(gòu)造符合郵件協(xié)議規(guī)則要求的郵件內(nèi)容

3、發(fā)送

Python對(duì)SMTP支持有smtplib和email兩個(gè)模塊,email負(fù)責(zé)構(gòu)造郵件,smtplib負(fù)責(zé)發(fā)送郵件,它對(duì)smtp協(xié)議進(jìn)行了簡(jiǎn)單的封裝。

這里我們用qq郵箱為例,并且自己是可以給自己發(fā)郵件的。

在開始前我們先做準(zhǔn)備工作:

登錄qq郵箱,后點(diǎn)擊“設(shè)置”

點(diǎn)擊“賬戶”

確保前兩項(xiàng)已開啟,然后點(diǎn)擊生成授權(quán)碼。

因?yàn)槲覀兙W(wǎng)頁(yè)登錄時(shí)的密碼是不可以用來python上使用;qq為了安全,我們平常用網(wǎng)頁(yè)或者qq官方的客戶端可以用我們的qq密碼登錄,但是第三方(比如python)是不可以登錄的。

所以要生成第三方授權(quán)碼。

代碼

import smtplib
from email.mime.text import MIMEText  # 郵件正文
from email.header import Header  # 郵件頭

# 登錄郵件服務(wù)器
smtp_obj = smtplib.SMTP_SSL("smtp.qq.com", 465)  # 發(fā)件人的SMTP服務(wù)器,端口號(hào)25
smtp_obj.login("你的qq賬號(hào)", 'admc********')  # 括號(hào)中的內(nèi)容分別是發(fā)件人郵箱賬號(hào)、授權(quán)碼
smtp_obj.set_debuglevel(1)  # 顯示調(diào)試信息,可以不用寫

# 設(shè)置郵件頭信息
msg = MIMEText("測(cè)試用Python發(fā)送email。", "plain", "utf-8")  # 正文內(nèi)容
msg['From'] = Header("小天天", 'utf-8')  # 發(fā)件人名字
msg["To"] = Header("有緣人", "UTF-8")  # 接收者名字
msg["Subject"] = Header('用Python發(fā)送郵件2022', 'utf-8')  # 主題

# 發(fā)送
smtp_obj.sendmail('發(fā)送人郵箱', ['接收人郵箱'], msg.as_string())
#第一個(gè)是發(fā)送人郵箱;第二個(gè)是數(shù)組,說明可以給多個(gè)人發(fā)送;msg就是剛剛寫的發(fā)送內(nèi)容。

運(yùn)行代碼

細(xì)節(jié):SMTP使用是25端口,SSL使用的是456端口;SMTP是明文發(fā)送,SSL是加密發(fā)送

發(fā)送html格式的內(nèi)容

import smtplib
from email.mime.text import MIMEText  # 郵件正文
from email.header import Header  # 郵件頭

# 登錄郵件服務(wù)器
smtp_obj = smtplib.SMTP_SSL("smtp.qq.com", 465)  # 發(fā)件人的SMTP服務(wù)器,端口號(hào)25
smtp_obj.login("2308748900", 'admcwiwxxgmwdifh')  # 括號(hào)中的內(nèi)容分別是發(fā)件人郵箱賬號(hào)、郵箱密碼
smtp_obj.set_debuglevel(1)  # 顯示調(diào)試信息,可以不用寫

# 設(shè)置郵件頭信息
# HTML
msg_body='''
    <h4>python發(fā)送html格式的郵件</h4>
    <p>
        測(cè)試用HTML格式發(fā)送郵件
    </p>
'''
msg = MIMEText(msg_body, "html", "utf-8") # 將plain改成html
msg['From'] = Header("小天天", 'utf-8')  # 發(fā)件人名字
msg["To"] = Header("有緣人", "UTF-8")  # 接收者名字
msg["Subject"] = Header('用Python發(fā)送郵件2022', 'utf-8')  # 主題

# 發(fā)送
smtp_obj.sendmail('2308748900@qq.com', ['2308748900@qq.com'], msg.as_string())

主要代碼和上面基本一樣,只是將文本改成html的代碼內(nèi)容而已

到此這篇關(guān)于Python實(shí)現(xiàn)郵件發(fā)送功能的示例詳解的文章就介紹到這了,更多相關(guān)Python郵件發(fā)送內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論