• python之发送HTML内容的邮件


     1 # 发送html内容的邮件
     2 import smtplib, time, os
     3 from email.mime.text import MIMEText
     4 from email.header import Header
     5 
     6 
     7 def send_mail_html(file):
     8     '''发送html内容邮件'''
     9     # 发送邮箱
    10     sender = 'zhangkai@192.168.20.190'
    11     # 接收邮箱
    12     receiver = 'gongxingrui@192.168.20.190'
    13     # 发送邮件主题
    14     t = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
    15     subject = '自动化测试结果_' + t
    16     # 发送邮箱服务器
    17     smtpserver = '192.168.20.190'
    18     # 发送邮箱用户/密码
    19     username = 'zhangkai'
    20     password = '123456'
    21 
    22     # 读取html文件内容
    23     f = open(file, 'rb')
    24     mail_body = f.read()
    25     f.close()
    26 
    27     # 组装邮件内容和标题,中文需参数‘utf-8’,单字节字符不需要
    28     msg = MIMEText(mail_body, _subtype='html', _charset='utf-8')
    29     msg['Subject'] = Header(subject, 'utf-8')
    30     msg['From'] = sender
    31     msg['To'] = receiver
    32     # 登录并发送邮件
    33     try:
    34         smtp = smtplib.SMTP()
    35         smtp.connect(smtpserver)
    36         smtp.login(username, password)
    37         smtp.sendmail(sender, receiver, msg.as_string())
    38     except:
    39         print("邮件发送失败!")
    40     else:
    41         print("邮件发送成功!")
    42     finally:
    43         smtp.quit()
    44 
    45 
    46 def find_new_file(dir):
    47     '''查找目录下最新的文件'''
    48     file_lists = os.listdir(dir)
    49     file_lists.sort(key=lambda fn: os.path.getmtime(dir + "\" + fn)
    50                     if not os.path.isdir(dir + "\" + fn)
    51                     else 0)
    52     # print('最新的文件为: ' + file_lists[-1])
    53     file = os.path.join(dir, file_lists[-1])
    54     print('完整文件路径:', file)
    55     return file
    56 
    57 
    58 dir = 'D:\test_data\auto_test_result'  # 指定文件目录
    59 file = find_new_file(dir)  # 查找最新的html文件
    60 send_mail_html(file)  # 发送html内容邮件
  • 相关阅读:
    C#之事件
    C#之委托
    CIC许可更新
    HMP许可更新
    知识库上传
    [转]spring中<tx:advice></tx:advice>意义
    [转]spring property标签中的 ref属性和ref 标签有什么不同
    [转] Spring@Autowired注解与自动装配
    [转]SpringMVC入门
    [转]SpringMVC拦截器详解[附带源码分析]
  • 原文地址:https://www.cnblogs.com/gongxr/p/7355326.html
Copyright © 2020-2023  润新知