Как закрыть браузер? Python
Проблема закрыть уже открытый пользователем браузер через python скрипт.
Если пробую os.system(r"c:\windows\system32\taskkill.exe /im chrome.exe /f"), то скрипт отрабатывает, но при повторном открытии браузер открывается "пустым" и появляется сообщение о восстановлении страницы "Работа Chrome была заверена некорректно. Восстановить." Для работы всего скрипта это не подходит.
Ответы (1 шт):
Автор решения: Алексей Осинный
→ Ссылка
my_close_process_file.py
import os
import sys
if sys.platform == 'win32':
import win32gui
import win32con
else:
print('установите win32gui и win32con')
sys.exit()
def window_enum_handler(hwnd, resultList):
if win32gui.IsWindowVisible(hwnd) and win32gui.GetWindowText(hwnd) != '':
resultList.append((hwnd, win32gui.GetWindowText(hwnd)))
def get_app_list(handles=[]):
mlst=[]
win32gui.EnumWindows(window_enum_handler, handles)
for handle in handles:
mlst.append(handle)
return mlst
def start(program_name):
try:
if sys.platform == 'win32':
c_program_name = os.path.basename(program_name).split('.')[0]
appwindows = get_app_list()
for app in appwindows:
if c_program_name.lower() in app[1].lower():
win32gui.PostMessage(app[0],win32con.WM_CLOSE,0,0)
return
except:
pass
try:
if len(sys.argv) == 2:
start(program_name = sys.argv[1])
else:
pass
except:
sys.exit(1)
#вызов файла в консоли #my_close_process_file.py "path/to/your/programm.exe"