1. 程式人生 > 實用技巧 >Python遠端獲取Windows主機資訊

Python遠端獲取Windows主機資訊

本文的文字及圖片來源於網路,僅供學習、交流使用,不具有任何商業用途,版權歸原作者所有,如有問題請及時聯絡我們以作處理。

以下文章來源於娜璋AI安全之家,作者 Eastmount

獲取Windows主機資訊

WMI(Windows Management Instrumentation) 是一項核心的Windows管理技術,WMI模組可用於獲取Windows內部資訊。WMI作為一種規範和基礎結構,通過它可以訪問、配置、管理和監視幾乎所有的Windows資源,比如使用者可以在遠端計算機器上啟動一個程序;設定一個在特定日期和時間執行的程序;遠端啟動計算機;獲得本地或遠端計算機的已安裝程式列表;查詢本地或遠端計算機的Windows事件日誌等等。

本文使用Python獲取Windows系統上相關的資訊可以使用WMI介面,安裝呼叫PIP工具即可。

  • pip install wmi
  • import wmi

PS:如有需要Python學習資料的小夥伴可以加下方的群去找免費管理員領取

可以免費領取原始碼、專案實戰視訊、PDF檔案等

下面的程式碼是獲取Windows主機相關資訊。

import wmi
import osimport socketw = wmi.WMI()#獲取電腦使用者資訊for CS in w.Win32_ComputerSystem():
#print(CS)
print("電腦名稱: %s" %CS.Caption)
print("使用者: %s" %CS.UserName)
print("製造商: %s" %CS.Manufacturer)
print("系統資訊: %s" %CS.SystemFamily)
print("工作組: %s" %CS.Workgroup)
print("機器型號: %s" %CS.model)
print("")
#獲取作業系統資訊for OS in w.Win32_OperatingSystem():
#print(OS)
print("作業系統: %s" %OS.Caption)
print("語言版本: %s" %OS.MUILanguages)
print("系統位數: %s" %OS.OSArchitecture)
print("註冊人: %s" %OS.RegisteredUser)
print("系統驅動: %s" %OS.SystemDevice)
print("系統目錄: %s" %OS.SystemDirectory)
print("")
#獲取電腦IP和MAC資訊for address in w.Win32_NetworkAdapterConfiguration(ServiceName = "e1dexpress"):
#print(address)
print("IP地址: %s" % address.IPAddress)
print("MAC地址: %s" % address.MACAddress)
print("網路描述: %s" % address.Description)
print("")
#獲取電腦CPU資訊for processor in w.Win32_Processor():
#print(processor)
print("CPU型號: %s" % processor.Name.strip())
print("CPU核數: %s" % processor.NumberOfCores)
print("")
#獲取BIOS資訊for BIOS in w.Win32_BIOS():
#print(BIOS)
print("使用日期: %s" %BIOS.Description)
print("主機板型號: %s" %BIOS.SerialNumber)
print("當前語言: %s" %BIOS.CurrentLanguage)
print("")
#獲取記憶體資訊for memModule in w.Win32_PhysicalMemory():
totalMemSize = int(memModule.Capacity)
print("記憶體廠商: %s" %memModule.Manufacturer)
print("記憶體型號: %s" %memModule.PartNumber)
print("記憶體大小: %.2fGB" %(totalMemSize/1024**3))
print("")
#獲取磁碟資訊for disk in w.Win32_DiskDrive():
diskSize = int(disk.size)
print("磁碟名稱: %s" %disk.Caption)
print("硬碟型號: %s" %disk.Model)
print("磁碟大小: %.2fGB" %(diskSize/1024**3))
#獲取顯示卡資訊for xk in w.Win32_VideoController():
print("顯示卡名稱: %s" %xk.name)
print("")
#獲取計算機名稱和IPhostname = socket.gethostname()ip = socket.gethostbyname(hostname)print("計算機名稱: %s" %hostname)
print("IP地址: %s" %ip)

輸出結果如下圖所示: