Este artículo trata sobre cómo verificar si una aplicación está abierta en un sistema usando Python. También puede consultar el artículo Python: obtenga una lista de procesos en ejecución para obtener más información.
En los siguientes enfoques, comprobaremos si chrome.exe está abierto en nuestro sistema o no.
Usando psutil
El psutil es un módulo de monitoreo y utilización del sistema de python. Es útil principalmente para la supervisión del sistema, la creación de perfiles y la limitación de los recursos del proceso y la gestión de los procesos en ejecución. Se puede monitorear el uso de recursos como CPU, memoria, discos, red, sensores. Es compatible con las versiones de Python 2.6, 2.7 y 3.4+. Puede instalar el módulo psutil usando el siguiente comando
pip install psutil
Usaremos el método psutil.process_iter() , devuelve un iterador que produce una instancia de clase de proceso para todos los procesos en ejecución en la máquina local.
Python3
# import module import psutil # check if chrome is open "chrome.exe" in (i.name() for i in psutil.process_iter())
Producción:
True
Importamos el módulo psutil . Luego buscamos chrome.exe en todos los procesos en ejecución en la máquina local usando psutil.process_iter() . Si se encuentra, devolverá la salida como VERDADERO , de lo contrario, FALSO .
Uso de WMI (solo usuario de Windows)
El módulo wmi se puede usar para obtener información del sistema de una máquina con Windows y se puede instalar con el siguiente comando:
pip install wmi
Su funcionamiento es similar a psutil . Aquí, verificamos si un nombre de proceso en particular está presente en la lista de procesos en ejecución.
Python3
# Import module import wmi # Initializing the wmi constructor f = wmi.WMI() flag = 0 # Iterating through all the running processes for process in f.Win32_Process(): if "chrome.exe" == process.Name: print("Application is Running") flag = 1 break if flag == 0: print("Application is not Running")
Producción:
Application is Running
Importamos el módulo wmi . Luego buscamos chrome.exe en todos los procesos en ejecución en la máquina local iterando a través de los nombres de los procesos. Si coincide con el proceso. Nombre, imprimirá La aplicación se está ejecutando , de lo contrario, la aplicación no se está ejecutando .
Publicación traducida automáticamente
Artículo escrito por biswasarkadip y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA