前言:
SMTP(Simple Mail Transfer Protocol) 即简单邮件传输协议, 它是一组用于由源地址到目的地址传送邮件的规则, 由它来控制信件的中转方式.
一, Python 发送 html 邮件
- # -*- coding: utf-8 -*-
- # @Time : 2018/6/6 上午 11:27
- # @Author : Wang
- # @File : test_mail_html.py
- import smtplib
- from email.header import Header
- from email.mime.multipart import MIMEMultipart
- from email.mime.text import MIMEText
- def sendMail():
- # 定义相关数据, 请更换自己的真实数据
- smtpserver = 'smtp.163.com'
- sender = 'test1@163.com'
- #receiver 可设置多个, 使用 "," 分隔
- receiver = 'wang@mobile.cn,zhang@mobile.cn,lily@mobile.cn'
- username = 'test1@163.com'
- password = '2018'
- msg = MIMEMultipart()
- boby = """
- <h3>Hi,all</h3>
- <p > 附件为本次 FM_自动化测试报告.</p>
- <p > 请解压 zip, 并使用 Firefox 打开 index.html 查看本次自动化测试报告结果.</p>
- """mail_body = MIMEText(boby, _subtype='html', _charset='utf-8')
- msg['Subject'] = Header("Android_自动化测试报告", 'utf-8')
- msg['From'] = sender
- receivers = receiver
- toclause = receivers.split(',')
- msg['To'] = ",".join(toclause)
- print(msg['To'])
- msg.attach(mail_body)
- # 登陆并发送邮件
- try:
- smtp = smtplib.SMTP()
- ## 打开调试模式
- # smtp.set_debuglevel(1)
- smtp.connect(smtpserver)
- smtp.login(username, password)
- smtp.sendmail(sender, toclause, msg.as_string())
- except:
- print("邮件发送失败!!")
- else:
- print("邮件发送成功")
- finally:
- smtp.quit()
- 二, Python 发送邮件带附件
- # 添加 report 附件
- att = MIMEText(open("/report/html.zip", "rb").read(), "base64", "utf-8")
- att["Content-Type"] = "application/octet-stream"
- times = time.strftime("%m_%d_%H_%M", time.localtime(time.time()))
- filename_report = 'FM_Android_Report'+'_'+times+'.zip'
- att["Content-Disposition"] = 'attachment; filename= %s' %filename_report
- msg.attach(att)
- 三, Python 发送邮件正文带图片
- msg = MIMEMultipart()
- boby = """
- <h3>Hi,all</h3>
- <p > 附件为本次 FM_自动化测试报告.</p>
- <p > 请解压 zip, 并使用 Firefox 打开 index.html 查看本次自动化测试报告结果.</p>
- <p>
- <br><img src="cid:image1"></br>
- </p>
- <p>
- """
- msg.attach(mail_body)
- fp = open("/image/1.png", 'rb')
- images = MIMEImage(fp.read())
- fp.close()
- images.add_header('Content-ID', '<image1>')
- msg.attach(images)
以上~~对你有帮助的话, 点赞吧~??
Python-SMTP 发送邮件 (HTML, 图片, 附件)
来源: http://www.bubuko.com/infodetail-2637267.html