Python3+requests+unittest+log+excel+HTMLTestRunner+email框架介面自動化案例⑺——郵件系統
阿新 • • 發佈:2020-07-17
一、郵件傳送報告方法
郵箱傳送方法是封裝smtplib和email模組。
sendemail.py
# _*_ coding:utf-8 _*_ import smtplib,time from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart def send_mail(title, message, receiver, attach_file=''): # python3.7版本開始,在SMTP建立階段就要指明host地址,3.7之前不需要 smtp = smtplib.SMTP(host='smtp.qq.com') smtp.connect(host='smtp.qq.com', port=25) # 建立連線 smtp.starttls() # 網站需要安全認證時新增 smtp.login('[email protected]','xxxxxx') #使用者名稱、#授權密碼,非登入密碼 msg = MIMEMultipart() content = MIMEText(message, 'html', 'utf-8') msg['Subject'] = f'{title}' msg['From'] = 'sender' msg['To'] = receiver msg.attach(content) if attach_file: att1 = MIMEText(open(attach_file, 'rb').read(), 'base64', 'utf-8') att1['Content-Type'] = 'application/octet-stream' att1['Content-Disposition'] = 'attachment; filename="report.txt"' msg.attach(att1) try: smtp.send_message(msg) status = 'Success' print(status) except smtplib.SMTPException as e: print(e) status = 'Failed' smtp.quit() return status if __name__ == '__main__': send_mail('郵件標題', 'msg', '收件箱','附件地址')