如何在selenium中使用chrome webdriver在python中下载文件?

2024-01-06

根据帖子here https://stackoverflow.com/questions/27824124/how-to-change-file-download-location-in-webdriver-while-using-chrome-driver-fire and here https://stackoverflow.com/questions/12698843/how-do-i-pass-options-to-the-selenium-chrome-driver-using-python我正在尝试使用 selenium 中的 chrome webdriver 来下载文件。这是到目前为止的代码

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

chrome_options = Options()
chrome_options.add_argument("--disable-extensions")
chrome_options.add_experimental_option("profile.default_content_settings.popups", 0)
chrome_options.add_experimental_option("download.prompt_for_download", "false")
chrome_options.add_experimental_option("download.default_directory", "/tmp")

driver = webdriver.Chrome(chrome_options=chrome_options)

但这本身就会导致以下错误:

WebDriverException: Message: unknown error: cannot parse capability: chromeOptions
from unknown error: unrecognized chrome option: download.default_directory
  (Driver info: chromedriver=2.24.417424 (c5c5ea873213ee72e3d0929b47482681555340c3),platform=Linux 4.10.0-37-generic x86_64)

那么如何解决这个问题呢?我必须使用这个“能力”吗?如果是这样,具体是怎样的?


尝试这个。在windows上执行

(如何在 Chrome 中使用 Selenium Python 绑定控制文件的下载 https://stackoverflow.com/questions/40654358/how-to-control-the-download-of-files-with-selenium-python-bindings-in-chrome)

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.add_experimental_option("prefs", {
  "download.default_directory": r"C:\Users\xxx\downloads\Test",
  "download.prompt_for_download": False,
  "download.directory_upgrade": True,
  "safebrowsing.enabled": True
})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在selenium中使用chrome webdriver在python中下载文件? 的相关文章

随机推荐

  • Python-撤消标准输出重定向

    所以我知道从 在Python中将标准输出重定向到 无 https stackoverflow com questions 6735917 redirecting stdout to nothing in python 您可以抑制 print
  • os.kill 没有引发 OSError,但是我没有看到给定的 pid 正在运行

    在我的 ubuntu 服务器上运行以下命令 python c import os os kill 5555 0 这样做是为了查看 pid 5555 是否正在运行 根据我的理解 如果 pid 没有运行 这应该会引发 OSError 这不会对我
  • 已存在记录检查的逻辑,但仅在更新表单值的情况下[重复]

    这个问题在这里已经有答案了 我正在开发一个名为县经理的模块 我在检查县 mysql 表中已存在的县及其国家 地区时遇到问题 Database table 让我解释 Add Page In add page i am having 2 fie
  • [String] 与 [(String)] 有什么区别?

    Swift 中 String 和 String 有什么区别 我让他们使用let arr1 String and let arr2 String 应该没有什么区别 如果你看到的话 这是 Xcode 或 Swift 中的一个小故障 String
  • 如何使用 std::copy 将一张地图复制到另一张地图?

    我想将一个 std map 的内容复制到另一个 std map 中 我可以用吗std copy为了那个原因 显然 下面的代码是行不通的 int main typedef std map
  • 跟踪对 Delphi 中的文件夹所做的更改

    我需要编写一个 Delphi 程序来监视文件夹的更改 添加 更新 重命名和删除文件 我看到了使用 TShellChangeNotifier 的建议 这是这个问题的正确解决方案吗 我应该如何使用它 This question https st
  • 从 SQL Server 检索数据并将其转换为 json 格式?

    我正在使用 PHP 5 6 0 并连接到我的本地 SQL Server 我能够检索数据 但它是数组格式 我想把它转换成json格式 我得到什么 date gt 2013 02 05 16 02 02 000000 timezone type
  • C++ 将字符串转换为十六进制,反之亦然

    在 C 中将字符串转换为十六进制或反之亦然的最佳方法是什么 Example 像这样的字符串 Hello World 转为十六进制格式 48656C6C6F20576F726C64 并从十六进制48656C6C6F20576F726C64字符
  • 尝试跟踪 Firefox 中未完成的 AJAX 请求的数量

    我正在使用 Selenium 来测试 Web 应用程序 并且不允许修改应用程序的 javascript 代码 我试图通过使用 GreaseMonkey 覆盖 XMLHttpRequest send 来跟踪未完成的 AJAX 请求的数量 新的
  • 为什么静态数据成员可能无法初始化?

    我试图在加载时向工厂注册一堆类 我的策略是利用静态初始化来确保在 main 开始之前 工厂已准备就绪 当我动态链接库时 此策略似乎有效 但当我静态链接时则无效 当我静态链接时 只有一些静态数据成员被初始化 假设我的工厂生产汽车 我有 Car
  • 需要了解使用 RAMDirectory 的优缺点

    我需要提高 Lucene 搜索查询的性能 我可以使用 RAMDirectory吗 它可以优化性能吗 这有索引大小限制吗 如果有人可以列出使用 RAMDirectory 的优点和缺点 我将不胜感激 Thanks 我比较了 FSDirector
  • WiX 安装程序:产品最终用户协议显示虚拟文本

    我有一个现有的安装项目 最终用户许可证对话框显示虚拟文本 Lorum ipsum 而不是默认协议 我一直在尝试解决该问题 但我不知道要更改什么以及如何获取默认的最终用户许可协议 我没有发布代码 因为它有很多公司的网址 但这里有一个 UI 节
  • 目录树的广度优先遍历并不懒惰

    我尝试遍历目录树 简单的深度优先遍历似乎不会以惰性方式生成数据 并且会耗尽内存 接下来 我尝试了广度优先方法 该方法显示了相同的问题 它使用了所有可用内存 然后崩溃 我的代码是 getFilePathBreadtFirst FilePath
  • 使用 DotNetOpenAuth 时,Azure 开发结构因 SocketException 崩溃

    我正在尝试使用 DotNetOpenAuth OpenID 身份验证在 Windows Azure Dev Fabric 下运行 ASP NET MVC 2 网站 Azure Dev Fabric 本身反复崩溃 dfloadbalancer
  • Vector Drawables 标志在支持库 24+ 上不起作用

    今天 Android Nougat 似乎已经released https android googleblog com 2016 08 android 70 nougat more powerful os made html 因此 我比以往
  • 如何查找类中是否存在特定原型的方法?

    我正在使用 SFINAE 的一些功能 当前位于必须在 Linux 和 Windows 中运行的应用程序的一部分 Windows 应用程序的编译器选择是 MSVC Visual Studio 2010 10 0 Linux 应用程序的编译器选
  • 如何在离开单元格后在Excel单元格中进行计算

    我使用 Excel 2010 和 Excel 2013 我想做如下的事情 无论我在单元格中输入什么数字 该数字都必须除以 60 并且按 TAB 键后应将结果打印在同一单元格上 如果我回到这个单元格 应该出现输入的数字 而不是计算的结果 我对
  • 耙子到底是什么?

    简单来说 Rake 是做什么的 它有什么目的 我知道它是一个构建工具 但我正在寻找更多细节 这些答案假设您知道什么是 DSL 或者熟悉 Make 或 Ant 如果情况并非如此 这里有一个 可能过于简单化的答案 Rake http rake
  • 为动态连接字符串设置实体框架

    我正在开发一个应用程序 该应用程序将跨多个数据库使用相同的数据库架构 为此 我创建了一个名为MyTemplate 创建新用户时 他们将拥有自己的数据库实例 所以 一个名为类似的数据库MyTemplate UserName 将被创建 当用户登
  • 如何在selenium中使用chrome webdriver在python中下载文件?

    根据帖子here https stackoverflow com questions 27824124 how to change file download location in webdriver while using chrome