萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> 編程語言綜合 >> Python psutil模塊簡單使用實例

Python psutil模塊簡單使用實例

   這篇文章主要介紹了Python psutil模塊簡單使用實例,本文直接給出使用腳本,實現查看cpu的信息、查看內存信息、查看系統啟動時間、查看網卡信息等,需要的朋友可以參考下

  安裝很簡單

   代碼如下:

  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: [email protected] 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

copyright © 萬盛學電腦網 all rights reserved