Com o modo headless do Chrome, é possível executar o navegador em um ambiente autônomo, sem interface visível. Basicamente, você pode executar o Chrome sem o Chrome.
Usar o modo headless
Para usar o modo headless, transmita a flag de linha de comando --headless para um binário do Chrome, por exemplo:
Linux
google-chrome --headless
macOS
open -a "Google Chrome" --args --headless
Windows
start chrome --headless
Usar o modo headless antigo
Antes, o modo headless era
uma implementação de navegador alternativa e separada
que era enviada como parte do mesmo binário do Chrome. Ele não compartilhava
nenhum código do navegador Chrome em
//chrome.
Agora, o Chrome tem modos headless e headful unificados.
Desde o Chrome 132.0.6793.0, o modo headless antigo só está disponível como um
binário independente chamado chrome-headless-shell, que pode ser baixado no painel do Chrome for Testing.
No Puppeteer
Para usar o modo headless no 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();
Para mais informações sobre como usar o modo headless no Puppeteer, consulte Modo headless.
No Selenium-WebDriver
Para usar o modo headless no Selenium-WebDriver:
const driver = await env
.builder()
.setChromeOptions(options.addArguments('--headless'))
.build();
await driver.get('https://developer.chrome.com/');
// …
await driver.quit();
Consulte a postagem do blog da equipe do Selenium para mais informações, incluindo exemplos usando outras vinculações de linguagem.
Feedback
Estamos ansiosos para receber seu feedback sobre o modo headless. Se você encontrar algum problema, informe um bug.