Chrome のヘッドレス モードを使用すると、UI を表示せずに無人環境でブラウザを実行できます。つまり、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 以降、古いヘッドレス モードは、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 での Headless の使用方法については、ヘッドレス モードをご覧ください。
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 チームのブログ投稿をご覧ください。
フィードバック
ヘッドレス モードに関するフィードバックをお待ちしております。問題が発生した場合は、バグを報告してください。