当前位置: 首页 > 面试题库 >

没有使用Selenium WebDriver弹出任何窗口,无法将chrome(最新的59)文件下载到特定目录

邹修真
2023-03-14
问题内容

我需要在chrome浏览器(最新版本为59)中下载文件到特定目录,而无需弹出窗口。使用以下代码显示窗口弹出窗口。如果我不使用此文件,则文件将下载到downloads文件夹,而不会显示任何窗口弹出窗口。我已经看到很多人面临类似的问题,但是这段代码对他们来说效果很好。最新的Chrome浏览器有问题吗?

        String downloadFilepath = TestConstants.FILE_PATH;
        HashMap<String, Object> chromePrefs = new HashMap<String, Object>();
        chromePrefs.put("profile.default_content_settings.popups", 0);
        chromePrefs.put("download.prompt_for_download", "false");
        chromePrefs.put("download.default_directory", downloadFilepath);
        ChromeOptions options = new ChromeOptions();
        options.setExperimentalOption("prefs", chromePrefs);

        DesiredCapabilities cap = DesiredCapabilities.chrome();
        cap.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
        cap.setCapability(ChromeOptions.CAPABILITY, options);

        driver = new ChromeDriver(cap);

问题答案:

当我使用Selenium 3.4.0,ChromeDriver 2.30和Chrome
59.0测试此功能时,我尝试使用自己的代码从URL下载excel文件https://www.microsoft.com/en- in/download/details.aspx?id=45485以及一些简单的调整。该代码块在我的末端工作正常。

System.setProperty("webdriver.chrome.driver", "C:\\Utility\\BrowserDrivers\\chromedriver.exe");
String downloadFilepath = "C:\\Utility\\OP_Resources\\ChromeDownload";
HashMap<String, Object> chromePrefs = new HashMap<String, Object>();
chromePrefs.put("profile.default_content_settings.popups", 0);
chromePrefs.put("download.prompt_for_download", "false");
chromePrefs.put("download.default_directory", downloadFilepath);
ChromeOptions options = new ChromeOptions();
options.setExperimentalOption("prefs", chromePrefs);
options.addArguments("start-maximized");
options.addArguments("disable-infobars");
DesiredCapabilities cap = DesiredCapabilities.chrome();
cap.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
cap.setCapability(ChromeOptions.CAPABILITY, options);
WebDriver driver = new ChromeDriver(cap);
driver.get("https://www.microsoft.com/en-in/download/details.aspx?id=45485");
JavascriptExecutor jse = (JavascriptExecutor)driver;
jse.executeScript("window.scrollBy(0,200)", "");
driver.findElement(By.linkText("Download")).click();


 类似资料:
  • 我需要在chrome浏览器(59最新版本)中下载一个文件到specfic目录,而没有窗口弹出窗口显示。使用下面的代码,它显示窗口弹出。如果我不使用此文件将被下载到下载文件夹不显示任何窗口弹出窗口。我见过很多人面临类似的问题,但这段代码对他们来说很有效。最新的Chrome有什么问题吗?

  • 当你在Chrome中下载一个文件时,你会在屏幕底部弹出一个带有下载文件名称的窗口。如何在文件下载后使用Selenium Webdriver和Python关闭它?

  • 我刚刚开始使用和开发应用程序的自动化框架。当我转到url时,会显示一个登录弹出窗口,询问凭据(用户名、密码)。 我已经能够在上处理这个问题,使用 但是,此解决方案对或不起作用。我也试过 而且 而这似乎也行不通。

  • 我想上传文件并保存到特定的目录。而且我对文件的概念是陌生的。当我从我的页面上传文件时,它们保存在另一个目录(C:\ Users \ ROOTCP ~ 1 \ AppData \ Local \ Temp \ multipartbody 989135345617811478 astemporary file)而不是指定的目录。我不能设置它。请帮我找到解决办法。提前感谢所有的帮助。 上传的文件为什么保

  • 问题内容: 有没有一种方法可以将依赖项从pom.xml文件下载到Java中的指定文件夹?我可以从Java运行maven命令,并收到下载消息,但是我不知道maven将这些库存储在哪里?如何将这些依赖项下载到特定文件夹? 问题答案: 看一下maven的依赖插件,特别是目标。在使用一节介绍了如何做的正是你想要的。 要从命令行执行此操作,只需执行以下操作: