import psutil
# Informacje o CPU
print(f"CPU count: {psutil.cpu_count(logical=True)}")
print(f"CPU usage: {psutil.cpu_percent(interval=1)}%")
# Informacje o pamięci
memory = psutil.virtual_memory()
print(f"Total memory: {memory.total / (1024 ** 3):.2f} GB")
print(f"Available memory: {memory.available / (1024 ** 3):.2f} GB")
print(f"Memory usage: {memory.percent}%")
# Informacje o dyskach
disk = psutil.disk_usage('/')
print(f"Total disk space: {disk.total / (1024 ** 3):.2f} GB")
print(f"Used disk space: {disk.used / (1024 ** 3):.2f} GB")
print(f"Free disk space: {disk.free / (1024 ** 3):.2f} GB")
print(f"Disk usage: {disk.percent}%")
# Informacje o sieci
net = psutil.net_io_counters()
print(f"Bytes sent: {net.bytes_sent / (1024 ** 2):.2f} MB")
print(f"Bytes received: {net.bytes_recv / (1024 ** 2):.2f} MB")
# Lista wszystkich uruchomionych procesów
for proc in psutil.process_iter(['pid', 'name', 'username']):
print(proc.info)
# Informacje o konkretnym procesie
pid = 1234 # Podaj PID procesu
process = psutil.Process(pid)
print(f"Process name: {process.name()}")
print(f"Process status: {process.status()}")
print(f"CPU usage: {process.cpu_percent(interval=1)}%")
print(f"Memory usage: {process.memory_info().rss / (1024 ** 2):.2f} MB")
# Pobieranie temperatury CPU
temperatures = psutil.sensors_temperatures()
if not temperatures:
print("Nie można pobrać informacji o temperaturze.")
else:
for name, entries in temperatures.items():
print(f"{name}:")
for entry in entries:
print(f" {entry.label or 'N/A'}: {entry.current}°C (min: {entry.min}°C, max: {entry.max}°C)")
# Pobieranie statystyk interfejsów sieciowych
net_io = psutil.net_io_counters(pernic=True)
for interface, stats in net_io.items():
print(f"Interfejs: {interface}")
print(f" Bytes sent: {stats.bytes_sent / (1024 ** 2):.2f} MB")
print(f" Bytes received: {stats.bytes_recv / (1024 ** 2):.2f} MB")
print(f" Packets sent: {stats.packets_sent}")
print(f" Packets received: {stats.packets_recv}")
print(f" Errors in: {stats.errin}")
print(f" Errors out: {stats.errout}")
print(f" Drops in: {stats.dropin}")
print(f" Drops out: {stats.dropout}")
# Pobieranie informacji o połączeniach sieciowych
connections = psutil.net_connections(kind='inet')
for conn in connections:
print(f"Lokalny adres: {conn.laddr.ip}:{conn.laddr.port}")
print(f"Zdalny adres: {conn.raddr.ip}:{conn.raddr.port}" if conn.raddr else "Zdalny adres: N/A")
print(f"Status: {conn.status}")
print(f"PID: {conn.pid}")
# Pobieranie adresów IP interfejsów sieciowych
net_if_addrs = psutil.net_if_addrs()
for interface, addrs in net_if_addrs.items():
print(f"Interfejs: {interface}")
for addr in addrs:
if addr.family == psutil.AF_INET:
print(f" IPv4: {addr.address}")
elif addr.family == psutil.AF_INET6:
print(f" IPv6: {addr.address}")