📜  获取系统信息——使用Python脚本

📅  最后修改于: 2022-05-13 01:55:05.078000             🧑  作者: Mango

获取系统信息——使用Python脚本

可以通过正在使用的操作系统轻松获取系统的系统信息,比如说 Ubuntu。但是使用Python脚本获取此系统信息不是很有趣吗?在本文中,我们将研究使用Python获取系统信息的各种方法。

获取信息有两种方式:

  1. 使用平台模块
  2. 子进程

1.使用平台模块:

可以使用以下命令安装平台模块:

pip install platform

例子:

Python3
import platform
 
my_system = platform.uname()
 
print(f"System: {my_system.system}")
print(f"Node Name: {my_system.node}")
print(f"Release: {my_system.release}")
print(f"Version: {my_system.version}")
print(f"Machine: {my_system.machine}")
print(f"Processor: {my_system.processor}")


Python3
import wmi
 
c = wmi.WMI()   
my_system = c.Win32_ComputerSystem()[0]
 
print(f"Manufacturer: {my_system.Manufacturer}")
print(f"Model: {my_system. Model}")
print(f"Name: {my_system.Name}")
print(f"NumberOfProcessors: {my_system.NumberOfProcessors}")
print(f"SystemType: {my_system.SystemType}")
print(f"SystemFamily: {my_system.SystemFamily}")


Python3
import os
 
print(os.uname())


Python3
import psutil
 
print(f"Memory :{psutil.virtual_memory()}")


Python3
# import module
import subprocess
 
# traverse the info
Id = subprocess.check_output(['systeminfo']).decode('utf-8').split('\n')
new = []
 
# arrange the string into clear info
for item in Id:
    new.append(str(item.split("\r")[:-1]))
for i in new:
    print(i[2:-2])


输出:

System: Windows
Node Name: LAPTOP-PRKUI1Q9
Release: 10
Version: 10.0.18362
Machine: AMD64
Processor: Intel64 Family 6 Model 78 Stepping 3, GenuineIntel

使用 WMI 模块(仅适用于 Windows):

WMI 模块可用于获取 windows 机器的系统信息,可以使用以下命令安装:

pip install wmi

例子:

Python3

import wmi
 
c = wmi.WMI()   
my_system = c.Win32_ComputerSystem()[0]
 
print(f"Manufacturer: {my_system.Manufacturer}")
print(f"Model: {my_system. Model}")
print(f"Name: {my_system.Name}")
print(f"NumberOfProcessors: {my_system.NumberOfProcessors}")
print(f"SystemType: {my_system.SystemType}")
print(f"SystemFamily: {my_system.SystemFamily}")

输出:

Manufacturer: LENOVO
Model: 80XH
Name: LAPTOP-PRKUI1Q9
NumberOfProcessors: 1
SystemType: x64-based PC
SystemFamily: ideapad 320-15ISK

使用 os 模块(仅适用于 Unix):

例子:

Python3

import os
 
print(os.uname())

输出:

使用 psutil 模块:

这主要用于获取系统上的运行时进程信息。
可以使用以下命令安装 psutil 模块:

pip install psutil

例子:

Python3

import psutil
 
print(f"Memory :{psutil.virtual_memory()}")

输出:

2.使用子流程模块:

我们将使用subprocess模块与 cmd 交互并将信息检索到您的Python ide。我们可以通过 subprocess 模块读取 cmd 命令。它是Python中的一个内置模块

让我们看看我的逻辑,如果我们在终端中运行这个systeminfo代码,那么我们会得到这样的结果:

让我们编写Python代码来获取信息:

执行:

Python3

# import module
import subprocess
 
# traverse the info
Id = subprocess.check_output(['systeminfo']).decode('utf-8').split('\n')
new = []
 
# arrange the string into clear info
for item in Id:
    new.append(str(item.split("\r")[:-1]))
for i in new:
    print(i[2:-2])

输出: