当前位置: 首页 > 编程笔记 >

Python psutil模块简单使用实例

艾正浩
2023-03-14
本文向大家介绍Python psutil模块简单使用实例,包括了Python psutil模块简单使用实例的使用技巧和注意事项,需要的朋友参考一下

安装很简单


pip install psutil

官网地址为:
https://pythonhosted.org/psutil/ (文档上有详细的api)
github地址为:
https://github.com/giampaolo/psutil/

psutil比较好的地方,一个是跨平台,不需要切换平台的时候在重新开放了,另外一个好处的工具集中CPU, memory, disks, network,这些信息都可以获得到。
可以用来做系统监控,性能分析,进程管理。 可以支持的系统有Linux, Windows, OSX, FreeBSD and Sun Solaris,32和64位系统都支持,同时支持pyhton2.4到3.4。

为了看看跨平台的好不好用,在windows实验下


#-*- coding: utf-8 -*-  

#python2.7x  

#author: orangleliu@gmail.com 2014-12-12  

#psutiltest.py  

''''' 

照着教程简单学习下psutil的使用,windows下试试 

'''  

import psutil  

import datetime  

  

#查看cpu的信息  

print u"CPU 个数 %s"%psutil.cpu_count()  

print u"物理CPU个数 %s"%psutil.cpu_count(logical=False)  

print u"CPU uptimes"  

print psutil.cpu_times()  

print ""  

  

#查看内存信息  

print u"系统总内存 %s M"%(psutil.TOTAL_PHYMEM/1024/1024)  

print u"系统可用内存 %s M"%(psutil.avail_phymem()/1024/1024)  

mem_rate = int(psutil.avail_phymem())/float(psutil.TOTAL_PHYMEM)  

print u"系统内存使用率 %s %%"%int(mem_rate*100)  

  

#系统启动时间  

print u"系统启动时间 %s"%datetime.datetime.fromtimestamp(psutil.boot_time()).strftime("%Y-%m-%d %H:%M:%S")  

  

#系统用户  

users_count = len(psutil.users())  

users_list = ",".join([ u.name for u in psutil.users()])  

print u"当前有%s个用户,分别是%s"%(users_count, users_list)  

  

#网卡,可以得到网卡属性,连接数,当前流量等信息  

net = psutil.net_io_counters()  

bytes_sent = '{0:.2f} kb'.format(net.bytes_recv / 1024)  

bytes_rcvd = '{0:.2f} kb'.format(net.bytes_sent / 1024)  

print u"网卡接收流量 %s 网卡发送流量 %s"%(bytes_rcvd, bytes_sent)  

  

#进程  进程的各种详细参数  

#磁盘 磁盘的使用量等等  


从这个简单的案例中可见psuti的强大,在window上也如此好用,做系统数据采集非常合适。
如果需要使用请详细参考官方文档。
gist上也有些代码片段可以参考 https://gist.github.com/search?q=psutil

 类似资料:
  • 本文向大家介绍AngularJS 模块详解及简单实例,包括了AngularJS 模块详解及简单实例的使用技巧和注意事项,需要的朋友参考一下 AngularJS 模块 模块定义了一个应用程序。 模块是应用程序中不同部分的容器。 模块是应用控制器的容器。 控制器通常属于一个模块。 创建模块 你可以通过 AngularJS 的 angular.module 函数来创建模块: "myApp" 参数对应执行

  • 本文向大家介绍简单实现Node的Events模块?相关面试题,主要包含被问及简单实现Node的Events模块?时的应答技巧和注意事项,需要的朋友参考一下 参考回答: 简介:观察者模式或者说订阅模式,它定义了对象间的一种一对多的关系,让多个观察者对象同时监听某一个主题对象,当一个对象发生改变时,所有依赖于它的对象都将得到通知。 node中的Events模块就是通过观察者模式来实现的: 这样,eve

  • 本文向大家介绍nodeJS模块简单用法示例,包括了nodeJS模块简单用法示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了nodeJS模块简单用法。分享给大家供大家参考,具体如下: 1.定义Student模块,Teacher模块 2.定义kclass模块 3.定义启动模块 index.js 运行结果: 希望本文所述对大家nodejs程序设计有所帮助。

  • 本文向大家介绍node.js中debug模块的简单介绍与使用,包括了node.js中debug模块的简单介绍与使用的使用技巧和注意事项,需要的朋友参考一下 前言 相信使用node.js的朋友们都知道,一般在nodejs需要进行调试的时候,可以使用console.log()方法来将调试信息输出到控制台,当发布到生产环境的时候,需要将这些调试信息都注释掉,为了方便切换而不需要改动程序代码,可以使用no

  • 本文向大家介绍Qt串口通信开发之QSerialPort模块简单使用方法与实例,包括了Qt串口通信开发之QSerialPort模块简单使用方法与实例的使用技巧和注意事项,需要的朋友参考一下 我这里主要是对串口类的简单使用,实现的功能是以读写方式打开串口,点击发送数据按钮将发送区的数据发送到缓冲区,然后在接收区显示出来,界面如下:(源码可以在这里下载) 这里使用了QSerialPort模块提供的两个类

  • 本文向大家介绍node.js中http模块和url模块的简单介绍,包括了node.js中http模块和url模块的简单介绍的使用技巧和注意事项,需要的朋友参考一下 前言 本文主要给大家介绍了关于node.js中http模块与url模块的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 一、http模块的简单介绍 node.js当中的http内置模块可以用于创建http服务