基于Python編寫一個監(jiān)控CPU的應(yīng)用系統(tǒng)
導(dǎo)語
哈嘍!我是木木子,最近好懶了哈天氣太熱了.jpg
有時間給大家更新一下下啦!今日上線——跟這這篇文章寫姐妹篇哈~
基于Python實現(xiàn)實時監(jiān)控CPU使用率

在使用 Mac 電腦辦公時,有時候不知道哪些軟件或進程會占用大量的資源,導(dǎo)致進行其他任務(wù)時出現(xiàn)變慢、卡頓等現(xiàn)象。因此,實時監(jiān)控系統(tǒng)的資源就變得非常重要。
但是市面上的系統(tǒng)監(jiān)控軟件琳瑯滿目,種類繁多,哪款監(jiān)控軟件最好?
?今天小編給大家介紹一款超好用的Mac 監(jiān)控軟件奔跑的貓貓,希望可以對你的選擇有所幫助。

嗯哼~win10電腦表示不服,Mac能有的,我也不能少,SO 一款治愈系的貓咪監(jiān)控小程序就做出來啦
一、簡介
1.1 軟件介紹
用過Mac的可能知道這么一款軟件:RunCat。
這是一款治愈系的 Mac 系統(tǒng)監(jiān)控軟件,它可以以動畫的形式駐留在你的系統(tǒng)狀態(tài)欄里。

貓貓可以通過運行速度告訴你 Mac 的 CPU 使用率。而且 RunCat 為菜單欄提供了關(guān)鍵幀動畫,動畫根據(jù) Mac 的 CPU 使用情況改變速度。
當然 RunCat 不只有貓,還有很多動物和動畫,比如:
貓 ??—狗 ??—獵豹 ??—兔子 ??—海豚 ??—青蛙 ??—鳥 ??—企鵝 ??—很長的龍 ??—齒輪 ??—火 ??—水滴 ??—火箭 ??—環(huán) ??——等等。
這應(yīng)用就功能來說確實不夠有優(yōu)勢,但是架不住它好玩啊。哈哈 小編就喜歡給大家介紹一些好玩兒的東西嘛~
另外它自帶的免費動畫很多,一般來說還是夠用的。RunCat 是款更適合無聊發(fā)呆時治愈打發(fā)時間的軟件哦!
二、準備中
2.0 原理簡介
原理其實很簡單,利用python的psutil包就可以輕松地獲取當前電腦的CPU利用率或者運行內(nèi)存利用率。然后根據(jù)利用率來決定托盤圖標的更新頻率就好啦。
然后通過循環(huán)設(shè)置5個不同狀態(tài)的icon來實現(xiàn)貓貓跑動的效果,有興趣的小伙伴可以制作自己喜歡
的動畫然后替換掉我找到的就OK啦~
2.1 環(huán)境安裝
Python3、Pycharm。相關(guān)模塊:psutil模塊;以及一些python自帶的模塊。
模塊安裝統(tǒng)一使用豆瓣鏡像源:
pip install -i https://pypi.douban.com/simple/ +模塊名
2.2 素材準備(可修改)
貓貓可以通過運行速度告訴你 Mac 的 CPU 使用率,主要也是貓貓做的小腳本哈,其他的動物可以自己嘗試做啦~

三、開始敲代碼
3.1 導(dǎo)入模塊
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 奔跑的貓-內(nèi)存
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_()
四、效果展示
靜態(tài)截圖展示效果

以上就是基于Python編寫一個監(jiān)控CPU的應(yīng)用系統(tǒng)的詳細內(nèi)容,更多關(guān)于Python監(jiān)控CPU的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
音頻處理 windows10下python三方庫librosa安裝教程
這篇文章主要介紹了音頻處理 windows10下python三方庫librosa安裝方法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-06-06
python的scrapy框架之Pipeline文件的用法詳解
這篇文章主要介紹了python的scrapy框架之Pipeline文件的用法詳解,Pipeline是一個獨立的模塊,用于處理從Spider中提取的Item對象,實現(xiàn)對數(shù)據(jù)的進一步處理、存儲和清洗等操作,下面將詳細介紹Scrapy框架中Pipeline的用法,需要的朋友可以參考下2023-10-10
Python利用卡方Chi特征檢驗實現(xiàn)提取關(guān)鍵文本特征
卡方檢驗最基本的思想就是通過觀察實際值與理論值的偏差來確定理論的正確與否。本文將利用卡方Chi特征檢驗實現(xiàn)提取關(guān)鍵文本特征功能,感興趣的可以了解一下2022-12-12

