Мне нужно загрузить некоторые файлы с веб-сайта, я использую Python - Selenium - Chrome - Osx.Закрытие всех открытых хромированных окон с использованием селена - python - osx
У меня есть свой код до сих пор:
lnk = "www.foobar.com"
CHROMEDRIVER=webdriver.Chrome()
options = webdriver.ChromeOptions()
profile = {"plugins.plugins_list": [{"enabled":False, "name":"Chrome PDF Viewer"}],
"download.default_directory" : TEMP_DOWNLOAD}
options.add_experimental_option("prefs",profile)
driver = webdriver.Chrome(chrome_options = options)
driver.get(lnk)
while True:
if filter(os.path.isfile, glob.glob(TEMP_DOWNLOAD+'/*.crdownload')):
pass
else:
break
driver.quit()
Этот код начинает загрузку файла, ожидает окончания загрузки, а затем закрывает WebDriver.
Все работает правильно, за исключением того, что он открывает 2 окна Chrome, один для открытия ссылки, а другой для загрузки файла, а метод quit() закрывает только последние.
Есть ли способ убить все окна, открытые Selenium (я пытаюсь избежать запуска команды терминала, чтобы убить процессы перебор)?
EDIT:
как сказал Мукеш Takhtani в комментариях в моем коде проблема бессмысленно WebDriver экземпляра.
Я считаю, что вы не нужна эта строка: CHROMEDRIVER = webdriver.Chrome(), вы можете попробовать комментируя это и запустить снова? –
спасибо @ mukesh-takhtani, эта бесполезная линия была проблемой! – Hrabal