上學那會,老師讓我用j**a獲取電腦硬體資訊,cpu, 硬碟,mac等,那個時候感覺搞了好久。。。。。。
今天,用python試了一下,簡單多了。分享一下:
首先安裝wmi庫,wmi是一種規範和基礎結構,通過它可以訪問、配置、管理和監視幾乎所有的windows資源。大多使用者習慣於使用眾多的圖形化管理工 具來管理windows資源,在wmi之前這些工具都是通過 win32應用程式程式設計介面來訪問和管理windows資源的。大多數指令碼 語言都不能直接呼叫win32 api,wmii的出現使得系統管理員可以通過一種簡便的方法即利用常見的指令碼語言實現常用的系統管理任務。好了,上**吧
import wmi
import time
import json
import win32com
class pchardwork(object):
global s
s = wmi.wmi()
def get_cpu_info(self):
cpu =
cp = s.win32_processor()
for u in cp:
cpu.append(
)print ":::cpu info:", json.dumps(cpu, true, indent=4)
return cpu
def get_disk_info(self):
disk =
for pd in s.win32_diskdrive():
disk.append(
)print":::disk info:", json.dumps(disk, true, indent=4)
return disk
def get_network_info(self):
network =
for nw in s.win32_networkadapterconfiguration (ipenabled=1):
network.append(
)print":::network info:", json.dumps(network, true, indent=4)
return network
def get_running_process(self):
process =
for p in s.win32_process():
process.append(
)print":::running process:", json.dumps(process, true, indent=4)
return process
#執行測試:
pcinfo = pchardwork()
pcinfo.get_cpu_info()
pcinfo.get_disk_info()
pcinfo.get_network_info()
pcinfo.get_running_process()
執行結果:
:::cpu info: [
]:::disk info: [
]:::network info: [
]:::running process: [
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, &nbewrkbwgstssp; ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ]簡單吧,附上wmi api說明:
補充:這裡使用python2.7平台測試,可能會出現如下錯誤:
1. no module named wmi 錯誤
可使用pip命令解決:
pip install wmi
即可。2. no module named win32com.client 錯誤
本站**pywin32-223-cp27-none-win32.whl 。
使用如下命令安裝:
pip install pywin32-223-cp27-none-win32.whl
電腦硬體引數
cpu是一塊超大規模的積體電路,是一台計算機的運算核心和控制核心,它的功能主要是解釋計算機指令以及處理計算機軟體中的資料 cpu常見引數 1 主頻 時鐘頻率,單位是兆赫 mhz 或千兆赫 ghz 用來表示cpu的運算 處理資料的速度,通常,主頻越高,cpu處理資料的速度就越快 cpu的主頻 外頻x倍...
電腦硬體知識
1.匯流排 匯流排是將資訊以乙個或多個源部件傳送到乙個或多個目的部件的一組傳輸線。通俗的說,就是多個部件間的公共連線,用於在各個部件之間傳輸資訊。cpu和北橋間有前端匯流排 北橋與顯示卡間為agp匯流排 晶元組間有南北橋匯流排,各類擴充套件裝置通過pci pci x匯流排與系統連線 主機與外部裝置的...
獲取電腦硬體資訊
csharp csharp csharp csharp using system using system.collections using system.management namespace hardwareinfos public static hashtable getallinfos ...