py發送帶附件email

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.base import MIMEBase
from email import encoders

# SMTP服務器設置
smtp_server = 'smtp.qq.com'
smtp_port = 587
secure_connection = 'STARTTLS'

# 發件人和收件人信息
sender_email = '[email protected]'
receiver_email = '[email protected]'

# 郵件內容
msg = MIMEMultipart()
msg['Subject'] = 'Email with Attachment'
msg['From'] = sender_email
msg['To'] = receiver_email

# 添加郵件正文
body = 'This is the email body.'
msg.attach(MIMEText(body, 'plain'))

# 添加附件
filename = 'smtp.py'
attachment = open(filename, 'rb')

part = MIMEBase('application', 'octet-stream')
part.set_payload(attachment.read())
encoders.encode_base64(part)
part.add_header('Content-Disposition', f'attachment; filename= {filename}')

msg.attach(part)

# SMTP賬戶信息
username = '[email protected]'
password = '密碼'

# 連接到SMTP服務器併發送郵件
try:
    with smtplib.SMTP(smtp_server, smtp_port) as server:
        #if secure_connection == 'STARTTLS':
        #    server.starttls()
        server.login(username, password)
        server.sendmail(sender_email, receiver_email, msg.as_string())
        print('Email sent successfully!')
except smtplib.SMTPException as e:
    print('Error sending email:', str(e))

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章