要實(shí)現(xiàn)Python的收發(fā)郵件功能,可以使用Python的內(nèi)置模塊smtplib和email。
首先,你需要導(dǎo)入這兩個(gè)模塊:
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.header import Header
接下來(lái),你需要設(shè)置發(fā)送方和接收方的郵箱信息:
# 發(fā)件人郵箱
sender = 'sender@example.com'
# 收件人郵箱
receivers = ['receiver1@example.com', 'receiver2@example.com']
然后,你需要?jiǎng)?chuàng)建郵件內(nèi)容和郵件對(duì)象:
# 創(chuàng)建一個(gè)帶附件的郵件對(duì)象
message = MIMEMultipart()
message['From'] = Header("發(fā)件人名稱(chēng)", 'utf-8')
message['To'] = Header("收件人名稱(chēng)", 'utf-8')
message['Subject'] = Header("郵件標(biāo)題", 'utf-8')
# 郵件正文內(nèi)容
message.attach(MIMEText('郵件正文', 'plain', 'utf-8'))
# 附件內(nèi)容
att = MIMEText(open('附件文件路徑', 'rb').read(), 'base64', 'utf-8')
att["Content-Type"] = 'application/octet-stream'
att["Content-Disposition"] = 'attachment; filename="附件文件名"'
message.attach(att)
接下來(lái),你需要登錄發(fā)件人郵箱服務(wù)器,并發(fā)送郵件:
try:
smtpObj = smtplib.SMTP('smtp.example.com', 25)
smtpObj.login('發(fā)件人郵箱用戶名', '發(fā)件人郵箱密碼')
smtpObj.sendmail(sender, receivers, message.as_string())
print("郵件發(fā)送成功")
except smtplib.SMTPException:
print("Error: 無(wú)法發(fā)送郵件")
以上代碼中的一些信息,比如發(fā)件人郵箱、收件人郵箱、發(fā)件人郵箱用戶名、發(fā)件人郵箱密碼等都需要根據(jù)實(shí)際情況進(jìn)行替換。
注意:在發(fā)送郵件之前,請(qǐng)確保你已經(jīng)安裝了Python的smtplib和email模塊,你可以使用pip install smtplib email
命令來(lái)進(jìn)行安裝。