基于Python编写一个监控CPU的应用系统
作者:顾木子吖
导语
哈喽!我是木木子,最近好懒了哈天气太热了.jpg
有时间给大家更新一下下啦!今日上线——跟这这篇文章写姐妹篇哈~
在使用 Mac 电脑办公时,有时候不知道哪些软件或进程会占用大量的资源,导致进行其他任务时出现变慢、卡顿等现象。因此,实时监控系统的资源就变得非常重要。
但是市面上的系统监控软件琳琅满目,种类繁多,哪款监控软件最好?
今天小编给大家介绍一款超好用的Mac 监控软件奔跑的猫猫,希望可以对你的选择有所帮助。
嗯哼~win10电脑表示不服,Mac能有的,我也不能少,SO 一款治愈系的猫咪监控小程序就做出来啦
一、简介
1.1 软件介绍
用过Mac的可能知道这么一款软件:RunCat。
这是一款治愈系的 Mac 系统监控软件,它可以以动画的形式驻留在你的系统状态栏里。
猫猫可以通过运行速度告诉你 Mac 的 CPU 使用率。而且 RunCat 为菜单栏提供了关键帧动画,动画根据 Mac 的 CPU 使用情况改变速度。
当然 RunCat 不只有猫,还有很多动物和动画,比如:
猫 🐱—狗 🐶—猎豹 🐆—兔子 🐰—海豚 🐬—青蛙 🐸—鸟 🐦—企鹅 🐧—很长的龙 🐲—齿轮 ⚙️—火 🔥—水滴 💧—火箭 🚀—环 ⭕️——等等。
这应用就功能来说确实不够有优势,但是架不住它好玩啊。哈哈 小编就喜欢给大家介绍一些好玩儿的东西嘛~
另外它自带的免费动画很多,一般来说还是够用的。RunCat 是款更适合无聊发呆时治愈打发时间的软件哦!
二、准备中
2.0 原理简介
原理其实很简单,利用python的psutil包就可以轻松地获取当前电脑的CPU利用率或者运行内存利用率。然后根据利用率来决定托盘图标的更新频率就好啦。
然后通过循环设置5个不同状态的icon来实现猫猫跑动的效果,有兴趣的小伙伴可以制作自己喜欢
的动画然后替换掉我找到的就OK啦~
2.1 环境安装
Python3、Pycharm。相关模块:psutil模块;以及一些python自带的模块。
模块安装统一使用豆瓣镜像源:
pip install -i https://pypi.douban.com/simple/ +模块名
2.2 素材准备(可修改)
猫猫可以通过运行速度告诉你 Mac 的 CPU 使用率,主要也是猫猫做的小脚本哈,其他的动物可以自己尝试做啦~
三、开始敲代码
3.1 导入模块
import sys import time import psutil from PyQt5.QtGui import QIcon from PyQt5.QtWidgets import QApplication, QSystemTrayIcon
3.2 奔跑的猫-CPU
def runcatCPU(): app = QApplication(sys.argv) # 最后一个可视的窗口退出时程序不退出 app.setQuitOnLastWindowClosed(False) icon = QSystemTrayIcon() icon.setIcon(QIcon('icons/0.png')) icon.setVisible(True) cpu_percent = psutil.cpu_percent(interval=1) / 100 cpu_percent_update_fps = 20 fps_count = 0 while True: fps_count += 1 if fps_count > cpu_percent_update_fps: cpu_percent = psutil.cpu_percent(interval=1) / 100 fps_count = 0 # 开口向上的抛物线, 左边递减 time_interval = (cpu_percent * cpu_percent - 2 * cpu_percent + 2) / 20 for i in range(5): icon.setIcon(QIcon('icons/%d.png' % i)) icon.setToolTip('cpu: %.2f' % cpu_percent) time.sleep(time_interval) app.exec_()
3.3 奔跑的猫-内存
def runcatMemory(): app = QApplication(sys.argv) # 最后一个可视的窗口退出时程序不退出 app.setQuitOnLastWindowClosed(False) icon = QSystemTrayIcon() icon.setIcon(QIcon('icons/0.png')) icon.setVisible(True) memory_percent = psutil.virtual_memory().percent / 100 memory_percent_update_fps = 20 fps_count = 0 while True: fps_count += 1 if fps_count > memory_percent_update_fps: memory_percent = psutil.virtual_memory().percent / 100 fps_count = 0 # 开口向上的抛物线, 左边递减 time_interval = (memory_percent * memory_percent - 2 * memory_percent + 2) / 20 for i in range(5): icon.setIcon(QIcon('icons/%d.png' % i)) icon.setToolTip('memory: %.2f' % memory_percent) time.sleep(time_interval) app.exec_()
四、效果展示
静态截图展示效果
以上就是基于Python编写一个监控CPU的应用系统的详细内容,更多关于Python监控CPU的资料请关注脚本之家其它相关文章!