python實現監測CPU、內存、硬盤狀況,psutil

作者環境爲python3

GetHardwareInfo.py

#!/usr/bin/python
# -*- coding: UTF-8 -*-
import psutil
import os


#infomation of Hardware, include disk, CPU, RAM
class HardwareInfo(object):
    def __init__(self):
        self.disk_total = 0
        self.disk_used = 0
        self.disk_free = 0
        self.disk_percent = 0
        self.ram_total = 0
        self.ram_used = 0
        self.ram_available = 0
        self.ram_percent = 0
        self.cpu_percent = 0
        self.temperatures = 0
        self.file_size = 0

def getHardwareInfo(disk, file_path):
    d = psutil.disk_usage(disk)
    h = HardwareInfo()
    h.disk_total = int(d.total/1024/1024)
    h.disk_used = int(d.used/1024/1024)
    h.disk_free = int(d.free/1024/1024)
    h.disk_percent = d.percent

    r = psutil.virtual_memory()
    h.ram_total = int(r.total/1024/1024)
    h.ram_used = int(r.used/1024/1024)
    h.ram_available = int(r.available/1024/1024)
    h.ram_percent = r.percent

    h.cpu_percent = psutil.cpu_percent()

    h.temperatures = psutil.sensors_temperatures()

    h.file_size = os.path.getsize(file_path)/1024/1024
    return h

test.py

#!/usr/bin/python
# -*- coding: UTF-8 -*-
'''
配置psutil    $sudo pip install psutil

print(ghi.getHardwareInfo('/', '/home/room304/lichengyuan/make_voc2007.py').disk_used) 
第一個參數爲硬盤編號,可以通過psutil.disk_partitions()獲得
第二個參數爲需要監測大小的文件路徑

s = ghi.getHardwareInfo('/', '/home/room304/lichengyuan/make_voc2007.py')
所有參數單位爲M
s.disk_total 硬盤大小
s.disk_used 已使用硬盤大小
s.disk_free 未使用硬盤大小
s.disk_percent 硬盤使用率
s.ram_total 內存大小
s.ram_used 已使用內存大小
s.ram_available 可以使用的內存大小
s.ram_percent 內存使用率
s.cpu_percent cpu使用率
s.temperatures 硬件溫度,結構體
s.file_size 監測的文件大小
'''
import GetHardwareInfo as ghi
print(ghi.getHardwareInfo('/', '/home/xx/xx/xx.py').disk_used)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章