在使用 Java 的 Playwright 时,可以通过配置浏览器窗口的大小来实现“最大化”效果。虽然 Playwright 本身没有直接提供一个“最大化”窗口的方法,但我们可以通过设置窗口尺寸为屏幕的分辨率来间接实现。
以下是实现的方法:
方法 1:设置窗口大小参数(推荐)
Playwright 支持通过启动浏览器时传递参数来设置窗口大小。
示例代码:
import com.microsoft.playwright.*;
public class MaximizeBrowser {
public static void main(String[] args) {
// 创建 Playwright 实例
try (Playwright playwright = Playwright.create()) {
// 启动浏览器并设置窗口大小
Browser browser = playwright.chromium().launch(new BrowserType.LaunchOptions()
.setHeadless(false)
.setArgs(new String[]{"--start-maximized"})); // 启动时直接最大化
// 创建新页面
BrowserContext context = browser.newContext(new Browser.NewContextOptions()
.setViewportSize(null)); // 设置为 null 以禁用默认的 viewport 限制
Page page = context.newPage();
// 打开网址
page.navigate("https://example.com");
// 其他操作...
}
}
}
方法 2:获取屏幕分辨率并设置窗口大小
如果需要更精确地控制窗口大小,可以通过 Java 调用屏幕分辨率,然后手动设置浏览器窗口的大小。
示例代码:
import com.microsoft.playwright.*;
import java.awt.*;
public class MaximizeBrowser {
public static void main(String[] args) {
// 获取屏幕分辨率
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
int width = (int) screenSize.getWidth();
int height = (int) screenSize.getHeight();
// 创建 Playwright 实例
try (Playwright playwright = Playwright.create()) {
// 启动浏览器
Browser browser = playwright.chromium().launch(new BrowserType.LaunchOptions()
.setHeadless(false));
// 创建新页面并设置窗口大小
BrowserContext context = browser.newContext(new Browser.NewContextOptions()
.setViewportSize(width, height)); // 设置窗口大小为屏幕分辨率
Page page = context.newPage();
// 打开网址
page.navigate("https://example.com");
// 其他操作...
}
}
}
方法 3:运行时调整窗口大小
你还可以在页面加载后,动态调整窗口大小。
示例代码:
import com.microsoft.playwright.*;
import java.awt.*;
public class MaximizeBrowser {
public static void main(String[] args) {
// 获取屏幕分辨率
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
int width = (int) screenSize.getWidth();
int height = (int) screenSize.getHeight();
// 创建 Playwright 实例
try (Playwright playwright = Playwright.create()) {
// 启动浏览器
Browser browser = playwright.chromium().launch(new BrowserType.LaunchOptions()
.setHeadless(false));
BrowserContext context = browser.newContext();
Page page = context.newPage();
// 动态设置窗口大小
page.setViewportSize(width, height);
// 打开网址
page.navigate("https://example.com");
// 其他操作...
}
}
}
总结
- 使用
--start-maximized
参数是最简单的方法。 - 如果需要动态调整,可以结合 Java 的
Toolkit
获取屏幕分辨率,然后设置窗口大小。 - 设置
viewportSize
为null
可以禁用 Playwright 默认的视口限制,从而全屏显示。