大家好,我是天空之城,今天給大家帶來發送帶附件的郵件方法。附件可以是圖片,音頻,表格,視頻,pdf都可以。
感謝博友「Samaritan·J」
import smtplib
# smtplib 用於郵件的發信動作
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.header import Header
from email.mime.application import MIMEApplication
# 處理任意二進制文件
if __name__ == '__main__':
msg = MIMEMultipart()
# 創建包含多個部分的郵件體的 MIME 對象實例
user = '[email protected]' # 發件人郵箱賬號
password = 'pwd' # 發件人郵箱密碼/授權碼
to_addr = '[email protected]' # 收件人地址
smtp_serv = 'smtp.qq.com' # 發信服務器
msg['From'] = Header("編輯發件人", 'utf-8')
msg['To'] = Header("編輯收件人", 'utf-8')
msg['Subject'] = Header('編輯郵件標題', 'utf-8')
msg.attach(MIMEText('郵件正文文本內容', _subtype='html', _charset='utf-8'))
part = MIMEApplication(open(r'C:\Users\data.xlsx', 'rb').read())
# open裏輸入添加附件文件的絕對路徑
part.add_header('Content-Disposition', 'attachment', filename='data.xlsx')
# 構造附件,filename是編輯附件文件名,可以隨便寫
msg.attach(part)
# 添加附件
server = smtplib.SMTP() # 開啓發信服務(也可使用加密傳輸)
server.connect(smtp_serv,25) # 連接服務器
server.login(user, password) # 登錄發信郵箱
server.sendmail(user,to_addr, msg.as_string()) # 發送郵件
server.quit() # 關閉服務器
原文鏈接:https://blog.csdn.net/u010890916/article/details/106596881