ChromeDriver全屏模式

10
我尝试向ChromeDriver发送F11,但它没有响应。当我按下F11时,Chrome会变成全屏模式。但是,通过ChromeDriver发送F11时,它却不会进入全屏模式。这对于ChromeDriver中的任何F键都是一样的。它可以在FirefoxDriver和IEDriver中正常工作,但无法在ChromeDriver中执行。有没有办法让ChromeDriver进入全屏模式?
注意:全屏模式与最大化模式不同,因为它会隐藏所有工具栏。

我为这个问题做的解决方法是,在启动 Chrome 后,我使用 user32 库检查活动窗口标题,并确保它是 Chrome。然后我分派本地键盘事件 F11,该事件在全局范围内触发,因为 Chrome 正在聚焦,所以浏览器进入全屏模式。 - Johnydep
7个回答

15

我能够通过使用kiosk模式来解决问题,该模式可以将浏览器保持在全屏状态。

ChromeOptions options = new ChromeOptions();
options.addArguments("--kiosk");
WebDriver driver = new ChromeDriver(options);

8
参数已更改:
ChromeOptions options = new ChromeOptions();
options.addArguments("start-maximized");

另一个选择是更改google-chrome的启动脚本,将start-maximized设置为默认值。

8
    ChromeOptions options = new ChromeOptions();
    options.addArguments("--start-fullscreen");
    WebDriver driver = new ChromeDriver(options);

如果您使用RemoteWebDriver:

    ChromeOptions options = new ChromeOptions();
    options.addArguments("--start-fullscreen");
    DesiredCapabilities capabilities = DesiredCapabilities.chrome();
    capabilities.setCapability(ChromeOptions.CAPABILITY, options);
    Instance = new RemoteWebDriver(new URL(<SeleniumServerURL>), capabilities);

1
只是一点小提示,这将在全屏模式下启动,不显示浏览器标题区域和选项卡。 - Samih A

1
driver.manage().window().fullscreen();

你好,user3759810,欢迎来到StackOverflow! 在回答问题时,可以适当添加更多的上下文信息。仅有代码而没有注释的答案并不如有注释的代码那么有帮助。 谢谢。 - picsoung

0

我用 Powershell/Selenium 写了这个脚本:

$Driver = Start-SeChrome -Fullscreen -StartUrl "https://........."

这对我来说完美地运作了


0
在我的情况下,我通过以下方式解决了 selenium webdriver 坐标和屏幕绝对坐标之间的差异(根本原因:Selenium.getcoordinate 机制忽略了 Chrome 标签、标题栏和地址字段尺寸):
String shortcutGoToFullScreen = Keys.chord(Keys.F11);
WebDriver.findElement(By.tagName("body")).sendKeys(shortcutGoToFullScreen);

只有一个问题,即全屏模式在任何页面代码更新后都会变为非全屏模式。因此,应该小心使用)


0

使用--start-fullscreen参数指定浏览器应该在全屏模式下启动,就像用户在启动后立即按下F11键一样。

ChromeOptions options = new ChromeOptions();
options.addArguments("--start-fullscreen");
WebDriver driver = new ChromeDriver(options);

您可以通过向ChromeOptions提供参数来根据自己的喜好更改行为。

以下链接详细介绍了参数及其行为。希望能对您有所帮助。

https://peter.sh/experiments/chromium-command-line-switches/#start-fullscreen


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接