python3使用SMTP发送HTML格式邮件
一、设置开启SMTP服务并获取授权码
可以参考第一篇文章,这里不再赘述:【一】Python3使用SMTP发送简单文本邮件
二、使用Python3发送HTML格式的邮件
0.使用的环境为:
Python3.6.3(64bit)
PyCharm2017.3(64bit)
1.实现代码:
importsmtplib
fromemail.headerimportHeader
fromemail.mime.textimportMIMEText
#发件人和收件人
sender='XXXXX@163.com'
receiver='XXXXX@qq.com'
#所使用的用来发送邮件的SMTP服务器
smtpserver='smtp.163.com'
#发送邮箱的用户名和授权码(不是登录邮箱的密码)
username='XXXXX'
password='XXXXX'
#邮件主题
mail_title='主题:测试报告3'
#读取html文件内容
f=open('report_test.html','rb')#HTML文件默认和当前文件在同一路径下,若不在同一路径下,需要指定要发送的HTML文件的路径
mail_body=f.read()
f.close()
#邮件内容,格式,编码
message=MIMEText(mail_body,'html','utf-8')
message['From']=sender
message['To']=receiver
message['Subject']=Header(mail_title,'utf-8')
try:
smtp=smtplib.SMTP()
smtp.connect('smtp.163.com')
smtp.login(username,password)
smtp.sendmail(sender,receiver,message.as_string())
print("发送邮件成功!!!")
smtp.quit()
exceptsmtplib.SMTPException:
print("发送邮件失败!!!")
2.同样,发送成功之后,如果在收件人的邮箱看不到邮件,可能是被当做垃圾邮件拦截了,可以去拦截记录里面找一下
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。