Chrome使用Selenium在Python中下载无头文件

DBo*_*llo 5 python selenium google-chrome google-chrome-headless

在无头模式下,Chrome默认禁用文件下载。

但是,最近他们向DevTools添加了一个选项来启用此行为:

https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDownloadBehavior

在Python中使用Selenium和ChromeDriver,如何允许文件下载?

jla*_*ins 1

以下是添加对无头文件下载支持的 chromedriver 票证:https://bugs.chromium.org/p/chromedriver/issues/detail ?id=1973

使用当前版本的无头 Chrome (#60) 时,文件下载被禁用。版本#62 添加了对下载的支持,该版本目前位于开发频道中。也需要 ChromeDriver 支持此功能。

它还引用了https://bugs.chromium.org/p/chromium/issues/detail?id=696481,其中包含该问题的重现步骤:

Chrome 版本:Chromium 58.0.3023.0

哪些步骤将重现该问题?(1) 在命令行上设置无头模式 (--headless) (2) 将 URL 指向可下载文件 (3) 没有任何反应

预期结果是什么?

当以无头模式启动并指向包含可下载文件的 URL 时,应下载文件并将其保存在“下载”文件夹中。

相反会发生什么?

什么也没有发生,文件没有被下载。