欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

python smtp 通过MIMEText类 发送HTML格式的邮件

来源:本站整理 作者:佚名 时间:2017-01-22 TAG: 我要投稿

由于纯文本的邮件内容已经不能满足多样化的需求,主要介绍通过引入mail.mime的MIMEText 类来实现支持HTML格式的邮件,支持所有HTML格式的元素,包括表格,图片,动画,css样式,表单等。(参考刘老师文献)
   案例中收集的是最简单的服务器硬件信息,通过smtp将信息发到收件人邮箱,大家可以根据自己的需求收集所需要的信息(比如CPU百分比,硬盘剩余百分比,内存使用百分比,并设定阈值,当硬盘剩余空间不足10%,发送邮件通知管理员及时处理)
#!/usr/bin/env python
#coding: utf-8
import smtplib
import os
import psutil
from email.mime.text import MIMEText    //导入MIMEText类
ip = os.popen("ifconfig |grep -v 127 |grep inet |awk '{print $2}'|cut -d: -f2").read().strip()     //获取IP地址
hostname  = os.popen("hostname").read().strip()   //获取主机名
cpu = psutil.cpu_count()  //获取CPU线程
mem = os.popen("free -m |grep Mem |awk '{print $2}'").read().strip()+"M"  //获取内存总量
disk = os.popen("fdisk -l |grep -E Disk |awk '{print $3}'").read().strip()+"G" //获取硬盘总大小
HOST = "smtp.163.com"      //指定使用网易163邮箱
SUBJECT = u"服务器硬件信息"   //邮件标题
TO = "1351271xxxx@139.com"   //收件人
FROM = "sallsoul@163.com"    //发件人
msg = MIMEText("""
               
                       
                                name
                                network
                                CPU
                                Mem
                                Disk
                          
                          
                                %s
                                %s
                                %s
                                %s
                                %s
                       
                """ % (hostname,ip,cpu,mem,disk),"HTML","uft-8")
msg['Subject'] = SUBJECT
msg['From'] = FROM
msg['To'] = TO
try:
        server  = smtplib.SMTP()      //创建一个SMTP对象
        server.connect(HOST,"25")      //通过connect方法链接到smtp主机
        server.starttls()             //启动安全传输模式
        server.login("sallsoul@163.com","passwordxx")  // 登录163邮箱 校验用户,密码
        server.sendmail(FROM, [TO], msg.as_string())   //发送邮件 

[1] [2]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载