Python
Запуск программы через питон
Как вообще сделать так, чтобы программа написанная на питоне отслеживала запущенные процессы и если определенного процесса нет в списке, запускала этот процесс(приложение).
Для того, чтобы программа на Python отслеживала запущенные процессы и запускала определенный процесс, можно использовать модуль psutil.
Для начала, установите psutil, используя команду:
pip install psutil
Затем, для того чтобы отслеживать запущенные процессы, можно использовать функцию psutil.process_iter(), которая возвращает итератор, содержащий объекты psutil.Process, представляющие запущенные процессы. Для каждого объекта psutil.Process можно получить имя процесса, используя метод name(), и идентификатор процесса, используя метод pid().
Для запуска процесса можно использовать функцию subprocess.run (), которая запускает процесс, переданный в качестве аргумента. Например, чтобы запустить приложение notepad.exe, можно использовать следующий код:
import subprocess
subprocess.run ('notepad.exe')
Таким образом, для реализации требуемого функционала можно написать код, который будет периодически проверять список запущенных процессов, и если нужный процесс отсутствует в списке, запускать его с помощью subprocess.run (). Например:
import psutil
import subprocess
import time
def check_and_run_process(process_name):
for proc in psutil.process_iter():
if proc.name () == process_name:
# процесс уже запущен, выходим из функции
return
# процесс не найден, запускаем его
subprocess.run (process_name)
while True:
check_and_run_process('notepad.exe')
time.sleep(10) # ждем 10 секунд перед следующей проверкой
Этот код будет периодически проверять список запущенных процессов, и если процесс notepad.exe отсутствует в списке, запускать его с помощью subprocess.run ().
Он будет работать бесконечно, проверяя и запуская процесс каждые 10 секунд. Вы можете изменить интервал проверки, чтобы он лучше соответствовал вашим потребностям.
Для начала, установите psutil, используя команду:
pip install psutil
Затем, для того чтобы отслеживать запущенные процессы, можно использовать функцию psutil.process_iter(), которая возвращает итератор, содержащий объекты psutil.Process, представляющие запущенные процессы. Для каждого объекта psutil.Process можно получить имя процесса, используя метод name(), и идентификатор процесса, используя метод pid().
Для запуска процесса можно использовать функцию subprocess.run (), которая запускает процесс, переданный в качестве аргумента. Например, чтобы запустить приложение notepad.exe, можно использовать следующий код:
import subprocess
subprocess.run ('notepad.exe')
Таким образом, для реализации требуемого функционала можно написать код, который будет периодически проверять список запущенных процессов, и если нужный процесс отсутствует в списке, запускать его с помощью subprocess.run (). Например:
import psutil
import subprocess
import time
def check_and_run_process(process_name):
for proc in psutil.process_iter():
if proc.name () == process_name:
# процесс уже запущен, выходим из функции
return
# процесс не найден, запускаем его
subprocess.run (process_name)
while True:
check_and_run_process('notepad.exe')
time.sleep(10) # ждем 10 секунд перед следующей проверкой
Этот код будет периодически проверять список запущенных процессов, и если процесс notepad.exe отсутствует в списке, запускать его с помощью subprocess.run ().
Он будет работать бесконечно, проверяя и запуская процесс каждые 10 секунд. Вы можете изменить интервал проверки, чтобы он лучше соответствовал вашим потребностям.
Владислав Краус
Спасибо, работает.
import psutil
"someProgram" in (p.name() for p in psutil.process_iter())
Владислав Краус
ок попробую сейчас
Владислав Краус
что-то ничего он не включает.
Александр Бурмистров
А у тебя нет доступа к браузеру? Там поищи
Никак это невозможно