import smtplib                           #发送邮件模块

from email.mime.text import MIMEText    #定义邮件内容

from email.mime.multipart import MIMEMultipart  #用于传送附件

 

#发送邮箱服务器

smtpserver='smtp.163.com'

 

#发送邮箱用户名密码

user='15291625900@163.com'

password='*******'

 

#发送和接收邮箱

sender=user

receives=['zhaofeng612326@126.com','zf263283998@sina.com']

 

 

#发送邮件主题和内容

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")

posted on 2018-07-18 21:15  我是学习的  阅读(317)  评论(0编辑  收藏  举报