python获取主机信息(cpu,内存,硬盘,网络)
代码如下
# -*- coding = utf-8 -*-
# @time: 2023/9/26 12:22
# @author: yk
# @file: 获取系统信息.py
# @software: pycharm
import psutil as pl
def showcomputerinfo():
print("cpu信息:")
# # logical=false 查看物理核心数
cpucountsphysical = pl.cpu_count(logical=false)
print(f" cpu物理核数:{cpucountsphysical}")
#
# # logical=true 获取逻辑核心数(线程数)
cpu_count = pl.cpu_count(logical=true)
print(f" cpu线程数:{cpu_count}")
#
# # cpu的使用率
cpu_percent = pl.cpu_percent(interval=1)
print(f" cpu使用率:{cpu_percent}%")
#
print('内存信息:')
# # 物理内存总量
total_memory = pl.virtual_memory().total
print(f' 内存总量:{int(total_memory/1024/1024)}m')
#
# # 可用内存总量
availabele_memory = pl.virtual_memory().available
print(f' 可用内存:{int(availabele_memory/1024/1024)}m')
#
# # 内存使用率
memory_percent = pl.virtual_memory().percent
print(f' 内存使用率:{memory_percent}%')
print("磁盘信息:")
# 获取磁盘分区信息
disk_parts = pl.disk_partitions()
for disk in disk_parts:
print(f' 分区名称:{disk.mountpoint.split(":")[0]} 文件类型:{disk.fstype}',end=' ')
print(f'磁盘利用率:{int(pl.disk_usage(disk.mountpoint).total/1024/1024/1024)}g',end=' ')
print(f'磁盘空间:{pl.disk_usage(disk.mountpoint).percent}%')
# 获取网卡信息
print('网卡信息:')
ip_adds = pl.net_if_addrs()
keys = ip_adds.keys()
for key in keys:
print(f" 网卡名称:{key}",end=' ')
print(f"网卡mac:{ip_adds[key][0].address}",end=' ')
print(f"网卡ip:{ip_adds[key][1].address}")
def getnetworkinfo():
print("获取网络连接信息")
netconnect = pl.net_connections()
print('本地地址'.ljust(23),'远程地址'.ljust(22),'pid'.ljust(10),'进程名')
for nc in netconnect:
if nc[5] == 'established':
if nc[3][0].startswith('10') :
precessname = getpidnname(nc[6])
print(f'{nc[3][0]}:{nc[3][1]}'.ljust(25),f'{nc[4][0]}:{nc[4][1]}'.ljust(25),f'{nc[6]}'.ljust(10),precessname)
def getpidnname(pid):
processlist = pl.process_iter()
for process in processlist:
if process.pid == pid:
return process.name()
showcomputerinfo()
getnetworkinfo()
效果如下

总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论