我正在尝试使用 selenium 自动下载文件。为此,我想设置默认下载目录并禁用下载提示。它似乎不起作用,我传递的选项甚至似乎都没有注册。下面是我如何创建浏览器的示例。有谁知道发生了什么?
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
or中browser.desired_capabilities
。例如,功能中 chromeOptions 的键是goog:chromeOptions': {'debuggerAddress': 'localhost:42911'}
.
当我执行命令时download_button.click()
,命令成功但没有下载。我还在没有 --headless 选项的 mac 笔记本电脑上尝试过,当我单击下载按钮时,浏览器会打开下载对话框,提示下载确认。
任何帮助/经验将不胜感激。
Python 3.6.6 :: Anaconda, Inc.
硒'3.141.0'
Linux 9725a3ce7b7e 4.9.125-linuxkit #1 SMP Fri Sep 7 08:20:28 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux