一个简单的小程序

用函数实现!~~

实现: cpu 使用率大于百分之50 时  ,  C 盘容量不足5 G 时, 内存 低于2G 时。 出现以上其中一种情况,发送自动报警邮件!

主要运用 到了两个 模块        yagmail   与   psutil      (没有的需要下载  pip 或者导入环境变量)

废话不多说

源代码如下:

import yagmail
def sendmail(subject,contents):
yag = yagmail.SMTP(user='xxxxxxx@qq.com',password='xxxxxxxxxx',host='xxxx.xxx.com')
yag.send(to='xxxxxxxx@qq.com',subject=subject, contents=contents)
yag.close()
import psutil
def mem () :
mem = psutil.virtual_memory()
free_mem = int(mem[4]/1024/1024/1024)
return (free_mem)
def cpu () :
cpu1 = psutil.cpu_percent(1)
return (cpu1)
def disk () :
disk = psutil.disk_usage(r'c:')
free_disk = int(disk[2]/1024/1024/1024)
return (free_disk)
def main ():
mem1 = mem()
cpu1 = cpu()
disk1 = disk()
msg1 = '''
cpu使用率 : %s%%
内存剩余量 : %s G
C盘容量剩余量 : %s G
'''%(cpu1,mem1,disk1)
                          
if cpu1 > 50:
print('cpu过高')
sendmail('cpu报警',msg1)
elif mem1 < 2 :
print('内存剩余量不足!')
sendmail('内存报警,可用量不足',msg1)
elif disk1 < 5 :
print('c盘容量过少')
sendmail('C盘可用容量不足',msg1)
else:
print('您的电脑一切正常') if __name__ == '__main__' :
main()

python -----一个简单的小程序(监控电脑内存,cpu,硬盘)的更多相关文章

  1. 输出多行字符的一个简单JAVA小程序

    public class JAVA { public static void main(String[] args) { System.out.println("-------------- ...

  2. 3.2 Lucene实战:一个简单的小程序

    在讲解Lucene索引和检索的原理之前,我们先来实战Lucene:一个简单的小程序! 一.索引小程序 首先,new一个java project,名字叫做LuceneIndex. 然后,在project ...

  3. Python3的tkinter写一个简单的小程序

    一.这个学期开始学习python,但是看了python2和python3,最后还是选择了python3 本着熟悉python的原因,并且也想做一些小程序来增加自己对python的熟练度.所以写了一个简 ...

  4. 【mpvue】使用Mpvue撸一个简单的小程序

    一.快速创建一个mpvue项目   全局安装 vue-cli   (如果有就不需要装了) 创建一个基于mpvue-quickstart模板的新项目,记得选择安装vuex vue init mpvue/ ...

  5. 利用Python制作简单的小程序:IP查看器

    前言 说实话,查看电脑的IP,也挺无聊的,但是够简单,所以就从这里开始吧.IP地址在操作系统里就可以直接查看.但是除了IP地址,我们也想通过IP获取地理地址和网络运营商情况.IP地址和地理地址并没有固 ...

  6. cpp学习笔记 1一个简单的小程序以及一些的知识点

    今天买的cpp到了从今天開始又一次学习cpp如今发现学校发的书真的不怎莫样. <em>#include<stdio.h>//预处理命令 int main()/*第一个被调用的函 ...

  7. 一个简单的flask程序

    初始化 所有Flask程序都必须创建一个程序实例. 程序实例是Flask类的对象,经常使用下述代码创建: from flask import Flask app = Flask(__name__) F ...

  8. 两周撸一个掘金微信小程序

    利益相关 无 声明 这并不是掘金官方小程序(貌似没有搜到掘金 APP 对应的官方小程序),完全为第三者开发者开发,仅用于学习交流,禁止用于其他用途.若要使用官方正版,可访问掘金 官方网站,或下载掘金官 ...

  9. Python爬取微信小程序(Charles)

    Python爬取微信小程序(Charles) 本文链接:https://blog.csdn.net/HeyShHeyou/article/details/90045204 一.前言 最近需要获取微信小 ...

随机推荐

  1. CentOS编译安装软件过程中遇到zlib.h: No such file or directory

      使用命令:yum install zlib-devel  解决问题.

  2. SQL Select 语句小数位数影响计算的准确率的问题

    在财务数据计算中,特别是分摊过程中,0.0001% 和0.00012%看似极小的差异,但是会造成最后求和很大的差异,因此,我们在计算中需要尽可能多的保留占比的小数位数 可以在SELECT CONVER ...

  3. ARM-start.s注释(2410Init.s)

    本人只是做个笔记保存一下. 来源:http://blog.itpub.net/13771794/viewspace-478463/ ;================================= ...

  4. MySQL Tips

    MySQL中的一些Tips,个人总结或者整理自网络 不明白为什么MySQL的很多材料中总是喜欢把联合(复合)索引和覆盖索引放在一块说事? 1,联合索引是一种索引的类型,指创建索引的时候包含了多个字段. ...

  5. 结对项目-WordCount

    结对作业: 成员:201631062115(me),201631062613(partner) 代码地址:https://gitee.com/ackary/WordCount 作业的链接地址:http ...

  6. ubuntu安装rabbitmq(转)

    查看ubuntu当前版本命令: cat /etc/issue 由于rabbitMq需要erlang语言的支持,在安装rabbitMq之前需要安装erlang,执行命令: sudo apt-get in ...

  7. wsl ubuntu 配置c++环境

    1.sudo apt-get install  build-essential 更新 配置源 2.sudo apt install gcc-8 3.sudo apt install g++-8 cd ...

  8. ajax请求aspx.cs后台方法

    前台jquery代码 $(function () { $("#btnfix").click(function () { $.ajax({ type: "post" ...

  9. MySql中order by和union all同时使用

    () UNION ALL () 两边的语句加上括号就可以了

  10. Django最简单的从请求过程

    1,url匹配,匹配路由,由理由分发器(urls.py)查找用户请求的url对应关系 1,找到业务函数就调用(views.py中的方法)   2,找不到就报404错误,     3,将数据返回给浏览器 ...