天天看点

利用Python的Psutil模块获取系统的信息

一、获取CPU信息

User Time 执行用户进程的时间百分比

System Time 执行内核进程和中断的时间百分比

Wait IO 空闲时间比

idle cpu处于idle状态的时间百分比

psutil.cpu_times()              #cpu的完整信息,默认percup为False
psutil.cpu_times(percpu=True)   #返回多个即列表形式

cpu_info = psutil.cpu_times()   #获取单个信息
cpu_info.user
cpu_info.nice

psutil.cpu_count()                #cpu逻辑个数,默认logical为True
psutil.cpu_count(logical=False)   #logical为False返回的是cpu的物理个数
           
利用Python的Psutil模块获取系统的信息

二、获取内存信息

内存的总数(total)

已经使用的内存数(used)

空闲的内存数(free)

缓冲使用数(buffers)

缓存使用数(cache)

交换分区使用数(swap)

psutil.virtual_memory()   #返回内存的完整信息
svmem(total=, available=, percent=, used=, free=, active=, inactive=, buffers=, cached=, shared=)
           

三、获取磁盘信息

、磁盘的利用率     
、IO信息
   psutil.disk_partitions()    获取磁盘的完整信息
   psutil.disk_usage('/')      获得分区的使用情况,这边以根分区为例
   psutil.disk_io_counters()   获取磁盘总的io个数
       perdisk 默认为False
       psutil.disk_io_counters(perdisk=True)   perdisk为True 返回单个分区的io个数
           
利用Python的Psutil模块获取系统的信息

四、获取进程信息

psutil.pids()   返回系统进程pid

Process         返回一个process对象,参数为进程的pid
   p = psutil.Process()    
   p.name()          进程的名字
   p.exe()           进程bin文件位置
   p.cwd()           进程的工作目录的绝对路径
   p.status()        进程的状态
   p.create_time()   进程的创建时间,时间戳
      time.ctime(p.create_time())  将时间戳转换为字符串时间
   p.uids()          进程的uid信息
   p.gids()          进程的gid信息
   p.cpu_times()     cup时间信息
   p.memory_info()   进程内存的利用率
   p.io_counters()   进程的io读写信息
           
利用Python的Psutil模块获取系统的信息