借助 Chrome 无头模式,您可以在无人值守的环境中运行浏览器,而无需任何可见的界面。实际上,您可以在没有 Chrome 的情况下运行 Chrome。
使用无头模式
如需使用无头模式,请将 --headless 命令行标志传递给 Chrome 二进制文件,例如:
Linux
google-chrome --headless
macOS
open -a "Google Chrome" --args --headless
Windows
start chrome --headless
使用旧版无头模式
以前,无头模式是
一种单独的替代浏览器实现
,恰好作为同一 Chrome 二进制文件的一部分提供。它没有共享
任何 Chrome 浏览器代码,在
//chrome。
Chrome 现在具有统一的无头模式和有头模式。
自 Chrome 132.0.6793.0 起,旧版无头模式仅作为 a
独立二进制文件提供,该文件可从 Chrome for Testing 信息中心下载。chrome-headless-shell
在 Puppeteer 中
如需在 Puppeteer 中使用无头模式,请执行以下操作:
import puppeteer from 'puppeteer';
const browser = await puppeteer.launch({
headless: true, // (default) enables Chrome Headless mode
// `headless: 'shell'` enables Headless Shell (old headless)
// `headless: false` enables "headful" mode
});
const page = await browser.newPage();
await page.goto('https://developer.chrome.com/');
// …
await browser.close();
如需详细了解如何在 Puppeteer 中使用无头模式,请参阅 无头模式。
在 Selenium-WebDriver 中
如需在 Selenium-WebDriver 中使用无头模式,请执行以下操作:
const driver = await env
.builder()
.setChromeOptions(options.addArguments('--headless'))
.build();
await driver.get('https://developer.chrome.com/');
// …
await driver.quit();
如需了解详情(包括使用其他语言绑定的示例),请参阅 Selenium 团队的博文。
反馈
我们期待您就无头模式提供反馈。如果您 遇到任何问题,请提交 bug。