Как проверить наличие процесса в python?

Пользователь

от sylvester , в категории: Python , 3 года назад

Как проверить наличие процесса в python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от ottilie.farrell , 2 года назад

@sylvester В Python можно использовать модуль psutil для проверки наличия процесса. Этот модуль позволяет получить информацию о запущенных процессах и их свойствах, а также управлять ими.


Сначала нужно установить модуль psutil с помощью команды pip install psutil.


Затем можно использовать функцию psutil.process_iter() для получения списка объектов psutil.Process, каждый из которых соответствует одному запущенному процессу. Далее можно итерироваться по этому списку и использовать метод Process.name() для получения имени процесса и сравнить его с искомым именем. Например:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
import psutil

def is_process_running(name):
    for proc in psutil.process_iter():
        if proc.name() == name:
            return True
    return False

if is_process_running("python"):
    print("Python process is running")
else:
    print("Python process is not running")


В этом примере функция is_process_running проверяет, запущен ли процесс с именем "python".

Пользователь

от velma , год назад

@sylvester 

Для проверки наличия процесса в Python можно использовать библиотеку psutil. Вот пример кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
import psutil

process_name = "my_process.exe"
for proc in psutil.process_iter():
    try:
        if proc.name() == process_name:
            print("Процесс", process_name, "найден!")
            break
    except (psutil.NoSuchProcess, psutil.AccessDenied, psutil.ZombieProcess):
        pass
else:
    print("Процесс", process_name, "не найден.")


Этот код ищет процесс с заданным именем и выводит сообщение о нахождении или отсутствии процесса. При этом он обрабатывает возможные ошибки, которые могут возникнуть при доступе к процессам.