python psutil模块获取系统信息

发布时间:2020-03-02编辑:脚本学堂
python获取系统信息,可以使用psutil模块,用以获取并分析系统CPU、内存、磁盘、网络等信息,通过例子学习psutil模块的用法。

python的第三方库模块psutil,是一个跨平台库的python模块,它实现等同于命令行工具提供的功能,比如: ps、top、netstat、ifconfig等。

可以利用python psutil模块进行分析系统CPU、内存、磁盘、网络等信息。

psutil模块安装方法::python psutil模块安装与使用实例  

复制代码 代码示例:
wget https://pypi.python.org/packages/source/p/psutil/psutil/psutil-2.1.2.tar.gz
tar -zxf psutil-2.1.2.tar.gz
cd  psutil-2.1.2
python setup.py install

psutil模块安装完成。

例子,python psutil模块获取系统信息。
 

复制代码 代码示例:

#!/usr/bin/env python

import psutil
import os
import time

#get cpuinfo
def getcpustate():
    print ("CPU:" +str(psutil.cpu_percent(interval=1))+"%n")

#get meminfo
def getmeminfo():
    mem = psutil.virtual_memory()
    swap = psutil.swap_memory()
    print ("Memory:%.2f%% %dMB/%dMB" % (mem.percent,mem.used/1024**2,mem.total/1024**2)),
    print ("ttSwap:%.2f%% total:%dMBn" % (swap.percent,swap.total/1024**2,))

#get diskinfo
def getdiskinfo():
    disk = psutil.disk_io_counters()
    print ("disk:read_count:%dtttwrite_count:%dndisk:read_bytes:%dttwrite_bytes:%dndisk:read_time:%dtttwrite_time:%dn"
           % (disk.read_count,disk.write_count,disk.read_bytes,disk.write_bytes,disk.read_time,disk.write_time))

#get netinfo
def getnetinfo():
    net = psutil.net_io_counters()
    print ("netinfo:sent_bytes:%dttrecv_bytes:%dnnetinfo:sent_packets:%dttrecv_packets:%d"
           % (net.bytes_sent,net.bytes_recv,net.packets_sent,net.packets_recv))

if __name__ == '__main__':
    while 1:
        print time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))
        getcpustate()
        getmeminfo()
        getdiskinfo()
        getnetinfo()
        os.system("sleep 3")
        os.system("clear")

运行结果:
python psutil模块获取系统信息