我正在开发一个微型Java应用程序,该应用程序需要以隐藏模式打开Firefox浏览器并使其静音。

如下面的代码所示,我找到了隐藏浏览器的方法。但是我在解决一些问题,如何使浏览器静音以及实际上是否可以这样做。

考虑到以下answer我认为这是可能的,我知道答案是针对Python的,但它使用的是硒Web驱动程序,但是对于Chrome,Firefox需要使用它。

我试图插入以下行firefoxBinary.addCommandLineOptions("--mute-audio");,但是似乎没有用。

以下是我目前拥有的。

    WebDriver driver;

    FirefoxBinary firefoxBinary = new FirefoxBinary();
    firefoxBinary.addCommandLineOptions("--headless");

    System.setProperty("webdriver.gecko.driver", driverPath);

    FirefoxOptions firefoxOptions = new FirefoxOptions();
    firefoxOptions.setBinary(firefoxBinary);

    driver = new FirefoxDriver(firefoxOptions);

最佳答案

经过进一步调查,以下代码修复了使用Selenium在Java中使Geckodriver静音的问题。
我在上面脚本的firefoxOptions.setBinary(firefoxBinary);行下面添加了此代码。

FirefoxProfile firefoxProfile = new FirefoxProfile();
firefoxProfile.setPreference("media.volume_scale", "0.0");
firefoxOptions.setProfile(firefoxProfile);

08-25 01:26