Я пытаюсь автоматически загрузить файл с селеном.Для этого я хотел бы установить каталог загрузки по умолчанию и отключить приглашение на загрузку.Кажется, он не работает, а параметры, которые я передаю, даже не регистрируются.Ниже приведен пример того, как я создаю браузер.Кто-нибудь знает, что происходит?
chromedriver = 'PATH/TO/chromedriver'
download_fp = './testPrismaDownload/'
prefs = {
"download.prompt_for_download" : False,
"download.default_directory": download_fp
}
options = webdriver.ChromeOptions()
options.binary_location = '/usr/bin/google-chrome-stable'
options.add_argument('--headless')
options.add_argument('--no-sandbox')
options.add_argument('--disable-gpu')
options.add_argument('--disable-setuid-sandbox')
options.add_experimental_option('prefs', prefs)
# i've tried various combinations of `options`, `chrome_options` (deprecated) and `desired_capabilities`
browser = webdriver.Chrome(options=options, desired_capabilities=options.to_capabilities(), executable_path=chromedriver)
ни одна из моих указанных опций не появляется в browser.capabilities
или browser.desired_capabilities
.Например, ключ для chromeOptions в возможностях: goog:chromeOptions': {'debuggerAddress': 'localhost:42911'}
.
Когда я выполняю download_button.click()
, команда успешно выполняется, но ничего не загружается.Я также попробовал его на своем Mac-ноутбуке без опции --headless, и когда я нажимаю кнопку загрузки, браузер открывает диалоговое окно загрузки, запрашивающее подтверждение загрузки.
Любая помощь / опыт будет принята с благодарностью.
Python 3.6.6 :: Anaconda, Inc.
Селен '3.141.0'
Linux 9725a3ce7b7e 4.9.125-linuxkit # 1 SMP Пт 7 сентября 08:20:28 UTC 2018 x86_64 x86_64 x86_64 GNU / Linux