如何使用Selenium Webdriver下载任何文件并将其保存到所需位置

我必须使用下面给出的Selenium Webdriver执行以下任务。

  1. 单击任何开始下载任何文件的链接/按钮(文件类型可以是图像,pdf,jar等)

  2. 单击弹出窗口上的“保存”(如果显示)(例如http://selenium.googlecode.com/files/selenium-server-standalone-2.33.0.jar)

  3. 提供所需的位置以保存该文件。

任何人都可以共享,我们如何使用Java来实现呢?


料青山看我应如是
浏览 5902回答 3
3回答

鸿蒙传说

您将无法访问“保存”对话框。这是由操作系统控制的。您真正唯一能做的就是为浏览器设置默认的下载位置,并允许它自动下载文件。然后用Java检查文件。您应该从以前的SO问题中检查此答案。基本上,在设置Firefox配置文件时,您会添加一个调用以将属性设置为以逗号分隔的MIME类型列表,以便始终下载:browser.helperApps.neverAsk.saveToDiskfirefoxProfile.setPreference("browser.helperApps.neverAsk.saveToDisk","text/csv");

慕姐4208626

由于站点向您发送了其他MIME类型,因此可能会出现“取消/保存”对话框弹出窗口。检查实际的标题内容。使用开发人员工具中内置的firefox,右键单击以检查发布的元素/下载链接,然后查看“网络”监视器以查看返回的ContentType标头值。这就是您要使用的值。相应地设置您的个人资料设置 firefoxProfile.setPreference("browser.helperApps.neverAsk.saveToDisk",                     "application/octet-stream,text/csv");我原以为“文本/ csv”会出现“应用程序/八位字节流”,一旦将其添加到接受的类型列表中,它就会按预期工作,没有弹出窗口
打开App,查看更多内容
随时随地看视频慕课网APP