java - 用于保存文件的 Selenium firefox 配置文件

标签 java firefox selenium automation

Possible Duplicate:
Access to file download dialog in Firefox

我正在使用 selenium 和 firefox 从互联网下载文件。 当我尝试下载文件时,我收到下载框,询问我是否要保存文件或“打开方式”。 我想保存文件但不自动保存(想重命名文件名),我希望浏览器会询问我在哪里保存文件。 Firefox 设置中的“始终询问在哪里保存文件”选项处于选中状态,并且仍然处于选中状态。当我使用 selenium 运行脚本时,它不会询问我并保存文件。 我如何设置 Firefox 配置文件来执行此操作?我在哪里可以看到所有 Firefox 配置文件? 感谢各位的帮助。

最佳答案

研究了该问题的一点解决方法。想分享我发现的东西。 关于一般使用 Selenium 的自动化浏览器对话框: 没有简单的方法让 Selenium 下载文件,因为浏览器使用 native 对话框,无法通过 JavaScript 控制,因此您需要一些“hack”。 检查this

特别是关于 ffox 浏览器设置,您可以将 Firefox 配置为 automatically start the download and save the file在特定地点

或者使用它:

    FirefoxProfile firefoxProfile = new FirefoxProfile();

    firefoxProfile.setPreference("browser.download.folderList",2);
    firefoxProfile.setPreference("browser.download.manager.showWhenStarting",false);
    firefoxProfile.setPreference("browser.download.dir","c:\\downloads");
    firefoxProfile.setPreference("browser.helperApps.neverAsk.saveToDisk","text/csv");

    WebDriver driver = new FirefoxDriver(firefoxProfile);//new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), capability);

    driver.navigate().to("http://www.myfile.com/hey.csv");

希望这对你有用

关于java - 用于保存文件的 Selenium firefox 配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12759256/

相关文章:

c# - 获取已打开的 Chrome 浏览器的 WebDriver

xml - 无法使用 xpath == "//*[text()[contains(.,' "+ word + " ')]]"找到元素

java - Thymeleaf 和 Spring : avoid duplicating REST requests for storage into Thymeleaf model class

java - 在 Java Swing 应用程序中创建在线帮助 - 使用 pdf 用户文档

javascript - 在 Firefox 中将对象转换为字符串

html - 如何删除笔画线末端的圆= "round"

css - 如何在 ADF 中使用 -moz-focus-inner 去除 firefox 中按钮的虚线轮廓

java - 单击按钮时显示 PopupWindow?

java - Java中的多态方法返回类型向下转换

python - 使用 selenium 和 google colab 抓取 youtube 评论很慢