python代码如何利用阿里云发送邮件

本文介绍了一个Python脚本,用于监控服务器磁盘使用情况。当磁盘使用率超过预设阈值(90%)时,脚本会通过QQ邮箱服务自动发送警告邮件给指定接收者。该脚本利用正则表达式解析磁盘使用信息,并通过smtplib模块实现邮件发送功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

此代码是磁盘使用率超过90%就会发送邮件
#!/usr/bin/env python
#coding:utf-8
import socket
import re
import os
import smtplib
import datetime
import commands,time 
from email.mime.text import MIMEText
from email.utils import formataddr
# 硬盘使用率报警阀值
m=socket.gethostname()
s="磁盘使用率超过:"
b="测试服务器"
d="%"
hd_usage_rate_threshold = 90
def check_hd_use():
        cmd_get_hd_use = '/bin/df'
        try:
            fp = os.popen(cmd_get_hd_use)
        except:
            ErrorInfo = r'get_hd_use_error'
            print ErrorInfo
            return ErrorInfo
        re_obj = re.compile(r'^/dev/.+\s+(?P<used>\d+)%\s+(?P<mount>.+)')
        hd_use = {}
        for line in fp:
            match = re_obj.search(line)
            if match is not None:
                hd_use[match.groupdict()['mount']] = match.groupdict()['used']
        fp.close()
        return  hd_use
def email(message):
msg = MIMEText(message, 'plain', 'utf-8')
msg['From'] = formataddr(["运维专用小号", '1195257477@qq.com'])
msg['To'] = formataddr(["大汉", '610323566@qq.com'])
msg['Subject'] = "磁盘监控报警"
server = smtplib.SMTP_SSL("smtp.qq.com", 465)
server.login("1195257477@qq.com", "xxxxxxxxxx")
server.sendmail('1195257477@qq.com', ['610323566@qq.com'], msg.as_string())
server.quit()
if __name__ == '__main__':
      for v in check_hd_use().values():
            if int(v)>hd_usage_rate_threshold:
               email(m+b+s+str(hd_usage_rate_threshold)+d)
6fc9b9972856b0f9fca1bbb2f77337a2688b5788 6fc9b9972856b0f9fca1bbb2f77337a2688b5788

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值