ruby - 使用 selenium 更改 Edge 的默认文件下载路径
问题描述
我正在使用 selenium-ruby 来自动化浏览器应用程序。我想模拟文件下载场景。当我想为 chrome 执行时,我有一个名为“download_path”的方法,它的值可以在运行时更改,下载文件时它将保存在我的目标路径中。
但是,当我为 edge 执行相同的代码时,edge 中没有对“download_path”的方法支持。
有没有办法在运行时设置我的默认下载位置?
铬代码:
@browser = Selenium::WebDriver.for :chrome
# code for navigating to downloads page and clicking on download button
@browser.download_path = File.dirname(filePath)
@browser.close
边码:
@browser = Selenium::WebDriver.for :edge
# code for navigating to downloads page and clicking on download button
@browser.download_path = File.dirname(filePath)
@browser.close
错误
Error: test_01_click_download_pass(Download_A_File): NoMethodError: undefined method `download_path=' for #<Selenium::WebDriver::EdgeHtml::Driver:0x0000000004cdd8a0>
环境细节:
OS: Windows 10
Programming Language: ruby (v2.5.5)
Gem : selenium-webdriver (v alpha4)
解决方案
检查selenium EdgeDriver 库和Microsoft Edge WebDriver 文档后,似乎无法通过 selenium Edge webdriver 设置更改下载文件路径。
我建议您可以通过 Edge 设置直接更改 Edge 中的默认下载位置。此外,您还可以尝试通过更改注册表来更改 Edge 浏览器设置。更多详细信息,请查看以下链接:
推荐阅读
- mysql - MySQL,如何通过连接三个表插入新数据表
- javascript - JSON.parse 仅在部署在 pythonanywhere 上时返回语法错误
- android - 在 Listview 上反应原生白色背景输出
- asp.net - 在同一页面上登录注册和搜索 ASP.NET
- java - 如何使用 java 8 流和 lambda 迭代和处理其值是元素列表的映射的值
- javascript-objects - 使用 immutableJs 更新 OrderMap 中具有特定值的所有键
- dbscan - 在 DBSCAN 聚类中,通过增加聚类大小,迭代会波动,为什么?
- mysql - 类似 Wordpress 的数据库结构优缺点(元键 -> 值)
- android - 如何将大文件读取到字节数组?
- firebase - firebase 函数 realtime-db 触发器如何与离线写入一起使用?