python 发送邮件

复制代码
[root@testnet ~]# cat  /mnt/mail/send_mail2.py
#_*_ coding:utf-8 _*_
import smtplib, sys
reload(sys)
sys.setdefaultencoding('utf8')
if len(sys.argv) != 2:
    print("Usage: python send_mail.py <your_argument>")
    sys.exit(1)

from email.mime.text import MIMEText
from email.header import Header
msg_from='test13643374810@qq.com' #发送方邮箱
passwd='FFBLKAFJSGQQUXF' #填入发送方邮箱的授权码
#msg_to='dengxw@qq.com' #收件人邮箱
to_addrs = ['shenzl@qq.com','zengyz@qq.com','duxw@qq.com']

mess_type_dict = {"mess_SparkBalanceSync":"FOUR LEVEL  ALERT:       EMR CLUSTER SPARK SERVICE:    SparkBalanceSync UNNORMAL. please check online",
                  "mess_SparkApnUserbill":"FOUR LEVEL  ALERT:       EMR CLUSTER SPARK SERVICE:    SparkApnUserbill UNNORMAL. please check online."
                  



}


def send_alert_mail(content):
    subject="EMR cluster SPARK service ALERTS" #主题
    msg = MIMEText(content)
    msg['Subject'] = subject
    msg['From'] = msg_from
    msg['To'] = Header(",".join(to_addrs)) 
    #msg['To'] = Header(to_addrs)
    try:
        s = smtplib.SMTP("smtp.163.com",25)
        s.login(msg_from, passwd)
        s.sendmail(msg_from, to_addrs, msg.as_string())
        print "发送成功"
    except  Exception as inst:
        print "发送失败:  {}".format(inst)
    finally:
        s.quit()

if __name__ == '__main__':
    argument = sys.argv[1]    
    send_alert_mail('Server 11.21.50.87 Alert: {}'.format(mess_type_dict[argument]))
[root@testnet ~]# 
复制代码

参考: 【python基础知识】18.实操-使用python自动群发邮件_python 邮件群发-CSDN博客

posted @   littlevigra  阅读(291)  评论(1编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
点击右上角即可分享
微信分享提示