¿La red io se obtiene mediante python psutil datos en tiempo real o datos acumulados?
#Encoding: utf-8
Importar psutil
Importar hora
Importar sistema
Importar analizador de opciones desde optparse
parser = OptionParser()
parser.add_option("-t ", "- time ", dest="time ",
Ayuda= "Este parámetro puede verificar el ancho de banda ocupado por la descarga actual, -t es el tiempo de prueba", metavar="10 ").
parser.add_option("-d ", "-deamon ", action="store_false ", dest="deamon ", default=True,
Help="Ejecutar en el fondo Este script")
def información del sistema():
boot_Start = time . strftime(" Y- M- d H: M: S ", time . local time( psutil . boot _ time()))
Time.sleep(0.5)
Cpu_usage = psutil.cpu_percent()
RAM = int(psutil.virtual_memory ( ).Total/(1027*1024))
RAM_percent = PS util.virtual_memory(). Porcentaje
Intercambio = int(psutil.swap_memory().Total/(1027*1024))
swap_percent = psutil.swap_memory(). Porcentaje
net_sent = PS util . Número de bytes enviados
net_recv = PS util . bytes_receive
net_spkg = utilidad PS net_io_counters(). Paquetes enviados
net_rpkg = PS util .
Packet_Receive
BFH = r""
Imprimir "\033[1;32m Boot_Time: s\033[1;m" Boot_Start
Imprimir "\033 [1;32m Utilización actual de CPU: s s\033[1;m" (uso de CPU, BFH)
Imprimir "\033[1;32m Memoria física: dm\usage: s s \033[1; m" (RAM, RAM_percent, BFH)
Imprimir "\033[1;32m memoria de intercambio: dm \usage: s s\033[1;m" (intercambio, porcentaje de cambio mutuo, BFH) p>
Imprimir "\033[1;32m enviado: d bytes\tNúmero de paquetes enviados: d\033[1;m" (Net_sent, Net_spkg)
Imprimir "\033[1; 32m recibidos: d bytes \tNúmero de paquetes recibidos: d\033[1;m" (Net_recv, Net_rpkg)
Para psutil.disk_partitions() I en:
Imprimir "\ 033[1;32m letra de unidad: s punto de montaje: s uso: s s\033[1;m" (i[0],i[1],psutil .disk_usage(I[1])[3],BFH)
Definir red io:
x = 0
Suma = 0
Aunque correcto:
Si x gt = s:
Descansos
r 1 = p util . bytes_receive
time.sleep(1)
r2 = psutil.net_io_counters(). bytes_receive
y = r2 - r1
imprimir ".2f Kb/s" (y / 1024.0)
suma = y
x = 1
Resultado = suma/x
Imprimir "\033[1;Velocidad promedio en 32ms segundos: . 2f Kb/s\033[1;m " (x, resultado/1024.0)
if __name__ == "__main__ ":
(opciones, argumentos) = parser.parse_args()
si opciones .hora:
Net_io(int(options.time))
En caso contrario:
Sysinfo()