====== psutil ====== 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}")