import smtplib #发送邮件模块
from email.mime.text import MIMEText #定义邮件内容
from email.mime.multipart import MIMEMultipart #用于传送附件
#发送邮箱服务器
smtpserver=‘smtp.163.com‘
#发送邮箱用户名密码
user=‘[email protected]‘
password=‘*******‘
#发送和接收邮箱
sender=user
receives=[‘[email protected]‘,‘[email protected]‘]
#发送邮件主题和内容
subject=‘python带附件邮件发送‘
content=‘<html><h1 style="color:red">python带附件邮件发送测试</h1></html>‘
#构造附件内容,添加E:\Python_script\logo.png为附件
send_file=open(r"E:\Python_script\logo.png",‘rb‘).read()
att=MIMEText(send_file,‘base64‘,‘utf-8‘)
att["Content-Type"]=‘application/octet-stream‘
# filename为附件所显示的名称
att["Content-Disposition"]=‘attachment;filename="logo.png"‘
#构建发送与接收信息
msgRoot=MIMEMultipart()
#添加文本内容
msgRoot.attach(MIMEText(content, ‘html‘, ‘utf-8‘))
msgRoot[‘subject‘]=subject
msgRoot[‘From‘]=sender
#添加收件人,这里是发送给多人
msgRoot[‘To‘] = ‘,‘.join(receives)
# 添加附件
msgRoot.attach(att)
#SSL协议端口号要使用465
smtp = smtplib.SMTP_SSL(smtpserver, 465)
#HELO 向服务器标识用户身份
smtp.helo(smtpserver)
#服务器返回结果确认
smtp.ehlo(smtpserver)
#登录邮箱服务器用户名和密码
smtp.login(user,password)
print("Start send email...")
smtp.sendmail(sender,receives,msgRoot.as_string())
smtp.quit()
print("Send End!")
原文地址:https://www.cnblogs.com/zf612326/p/9332651.html