Python psutil模块简单使用实例


Posted in Python onApril 28, 2015

安装很简单

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
Python 相关文章推荐
通过数据库向Django模型添加字段的示例
Jul 21 Python
python实现中文转换url编码的方法
Jun 14 Python
总结python实现父类调用两种方法的不同
Jan 15 Python
python selenium UI自动化解决验证码的4种方法
Jan 05 Python
Python函数参数操作详解
Aug 03 Python
python3实现网络爬虫之BeautifulSoup使用详解
Dec 19 Python
python实现计数排序与桶排序实例代码
Mar 28 Python
python 用所有标点符号分隔句子的示例
Jul 15 Python
python实现京东订单推送到测试环境,提供便利操作示例
Aug 09 Python
在python中利用dict转json按输入顺序输出内容方式
Feb 27 Python
Python 机器学习工具包SKlearn的安装与使用
May 14 Python
python神经网络学习 使用Keras进行简单分类
May 04 Python
Python RuntimeError: thread.__init__() not called解决方法
Apr 28 #Python
Python标准库defaultdict模块使用示例
Apr 28 #Python
Python自动重试HTTP连接装饰器
Apr 28 #Python
Python2.6版本中实现字典推导 PEP 274(Dict Comprehensions)
Apr 28 #Python
Python中输出ASCII大文字、艺术字、字符字小技巧
Apr 28 #Python
Python合并多个装饰器小技巧
Apr 28 #Python
查看Python安装路径以及安装包路径小技巧
Apr 28 #Python
You might like
windows下的WAMP环境搭建图文教程(推荐)
2017/07/27 PHP
Alliance vs Liquid BO3 第一场2.13
2021/03/10 DOTA
document.compatMode介绍
2009/05/21 Javascript
jquery判断单个复选框是否被选中的代码
2009/09/03 Javascript
浅谈Node.js中的定时器
2015/06/18 Javascript
node.js调用C++开发的模块实例
2015/07/03 Javascript
解决JavaScript数字精度丢失问题的方法
2015/12/03 Javascript
微信小程序开发的四十个技术窍门总结(推荐)
2017/01/23 Javascript
JavaScript数据结构学习之数组、栈与队列
2017/05/02 Javascript
javascript 玩转Date对象(实例讲解)
2017/07/11 Javascript
ReactNative实现图片上传功能的示例代码
2017/07/11 Javascript
Vue组件通信实践记录(推荐)
2017/08/15 Javascript
JavaScript实现各种排序的代码详解
2017/08/28 Javascript
微信小程序实现鼠标拖动效果示例
2017/12/01 Javascript
Angular项目从新建、打包到nginx部署全过程记录
2017/12/09 Javascript
vue-router 实现导航守卫(路由卫士)的实例代码
2018/09/02 Javascript
JavaScript实现模态对话框实例
2020/01/13 Javascript
JavaScript实现省市区三级联动
2020/02/13 Javascript
[02:23]1个至宝=115个英雄特效 最“绿”至宝拉比克“魔导师密钥”登场
2018/12/29 DOTA
一些Python中的二维数组的操作方法
2015/05/02 Python
对numpy的array和python中自带的list之间相互转化详解
2018/04/13 Python
Flask框架响应、调度方法和蓝图操作实例分析
2018/07/24 Python
Face++ API实现手势识别系统设计
2018/11/21 Python
详解Python下载图片并保存本地的两种方式
2019/05/15 Python
python实现控制电脑鼠标和键盘,登录QQ的方法示例
2019/07/06 Python
python 二维矩阵转三维矩阵示例
2019/11/30 Python
捷克钓鱼用品网上商店:Parys.cz
2018/06/15 全球购物
俄罗斯购买剧院和演唱会门票网站:Parter.ru
2019/11/09 全球购物
销售行业个人求职自荐信
2013/09/25 职场文书
安全生产计划书
2014/05/04 职场文书
机电专业求职信
2014/06/14 职场文书
医院合作协议书
2014/08/19 职场文书
2014年人力资源工作总结
2014/11/19 职场文书
蓝天保卫战收官在即 :15行业将开展环保分级评价
2019/07/19 职场文书
美甲店的创业计划书模板
2019/08/23 职场文书
sql server 累计求和实现代码
2022/02/28 SQL Server