使用selenium java在firefox gecko驱动程序中自动下载pdf

使用selenium java在firefox gecko驱动程序中自动下载pdf,java,firefox,selenium-webdriver,geckodriver,Java,Firefox,Selenium Webdriver,Geckodriver,任何人都可以使用firefox(geckodriver)创建配置文件并设置选项,以自动下载selenium webdriver-java中的文件。我已经在谷歌上搜索了很多选项,但没有什么效果。所以在堆栈溢出上发布我的查询。如果可能,请提供一些代码片段帮助。这适用于selenium 3和firefox版本52 提前感谢。1/在firefox.exe-p中手动创建新的firefox配置文件 2/使用此新配置文件运行firefox,并设置为自动下载PDF文件 3/使用以下命令: @BeforeClas

任何人都可以使用firefox(geckodriver)创建配置文件并设置选项,以自动下载selenium webdriver-java中的文件。我已经在谷歌上搜索了很多选项,但没有什么效果。所以在堆栈溢出上发布我的查询。如果可能,请提供一些代码片段帮助。这适用于selenium 3和firefox版本52


提前感谢。

1/在firefox.exe-p中手动创建新的firefox配置文件

2/使用此新配置文件运行firefox,并设置为自动下载PDF文件

3/使用以下命令:

@BeforeClass
    public static void setUpClass() {

        FirefoxOptions options = new FirefoxOptions();

        ProfilesIni allProfiles = new ProfilesIni();         
        FirefoxProfile selenium_profile = allProfiles.getProfile("NAME OF THE NEW FIREFOX PROFILE");
        options.setProfile(selenium_profile);

        options.setBinary("PATH TO FIREFOX.EXE");
        System.setProperty("webdriver.gecko.driver", "PATH TO GECKODRIVER.EXE");
        driver = new FirefoxDriver(options);
        driver.manage().window().maximize();

    }
使用现有的自定义firefox配置文件,您几乎可以通过任何firefox设置修改(代理设置、1个导入的证书,无需询问、扩展等)来运行测试

不再需要在代码中指定:

FirefoxProfile selenium_profile = new FirefoxProfile();
        selenium_profile.setPreference...

看到你的答案了吗@Anton:我之前看过这个。它不起作用:)请看:对SO的期望是,用户提问时不仅要进行研究以回答自己的问题,还要分享研究、代码尝试和结果。这表明你花了时间来帮助自己,它使我们避免重复显而易见的答案,最重要的是,它帮助你得到一个更具体和相关的答案!另见: