psutil比較好的地方,一個是跨平臺,不需要切換平臺的時候在重新開放了,另外一個好處的工具集中CPU, memory, disks, network,這些信息都可以獲得到。
可以用來做系統監控,性能分析,進程管理。 可以支持的系統有Linux, Windows, OSX, FreeBSD and Sun Solaris,32和64位系統都支持,同時支持pyhton2.4到3.4。
#-*- 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)
#進程 進程的各種詳細參數
#磁盤 磁盤的使用量等等