Я хочу программно инициализировать профиль Firefox, чтобы были созданы все файлы, которые обычно создаются при первом запуске Firefox.
Я пытался использовать firefox -CreateProfile
, но он только создает папку и файл times.json
. Мне нужен полный профиль. Что мне, вероятно, нужно сделать, это запустить и закрыть Firefox с помощью Python, но я не могу заставить Firefox закрыться.
Я использую subprocess.Popen
, поэтому я могу получить pid, чтобы позже закрыть Firefox с помощью proc.terminate()
, ноэто не работает. Процесс pid больше не найден. Возможно, это как-то связано с многопроцессорностью Firefox?
import os
import subprocess
import time
profile_name = 'new_profile'
profile_path = f"C:\\Users\\user\\profiles\\{profile_name}"
os.system(f'firefox -CreateProfile "{profile_name} {profile_path}" -no-remote')
proc = subprocess.Popen(['firefox', '-profile', profile_path, '-no-remote'])
print(f"Pid: proc.pid")
time.sleep(3)
proc.terminate() # Not working
time.sleep(1)
os.system(f"taskkill /F /pid {proc.pid}") # Process not found
Запуск сценария и подтверждение с помощью taskkill
процесс на исходном pid больше не найден:
Pid: 16472
ERROR: The process "16472" not found.
Как можноЯ закрываю Firefox, используя этот подход?