מצב 'דפדפן Chrome ללא GUI'

Peter Kvitek
Peter Kvitek

במצב Headless של Chrome, אפשר להריץ את הדפדפן בסביבה לא מאוישת, בלי ממשק משתמש גלוי. בעצם, אתם יכולים להפעיל את Chrome בלי Chrome.

שימוש במצב 'דפדפן ללא GUI'

כדי להשתמש במצב 'דפדפן ללא GUI', מעבירים את התכונה הניסיונית בשורת הפקודה --headless לקובץ בינארי של Chrome, לדוגמה:

Linux

google-chrome --headless

macOS

open -a "Google Chrome" --args --headless

Windows

start chrome --headless

שימוש במצב 'דפדפן ללא GUI' מהגרסה הקודמת

בעבר, מצב Headless היה יישום דפדפן נפרד ואלטרנטיבי שנשלח כחלק מאותו קובץ בינארי של Chrome. הוא לא שיתף אף אחד מקוד דפדפן Chrome ב-//chrome.

עכשיו יש ב-Chrome מצבים מאוחדים של 'דפדפן ללא GUI' ו'דפדפן עם GUI'.

מצב Headless משתף קוד עם Chrome.

החל מגרסה Chrome 132.0.6793.0, מצב Headless הישן זמין רק כקובץ בינארי עצמאי בשם chrome-headless-shell שאפשר להוריד ממרכז הבקרה של Chrome for Testing.

ב-Puppeteer

כדי להשתמש במצב 'דפדפן ללא GUI' ב-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();

מידע נוסף על השימוש ב-Headless ב-Puppeteer זמין במאמר בנושא מצב Headless.

ב-Selenium-WebDriver

כדי להשתמש במצב 'דפדפן ללא GUI' ב-Selenium-WebDriver:

const driver = await env
  .builder()
  .setChromeOptions(options.addArguments('--headless'))
  .build();

await driver.get('https://developer.chrome.com/');

// …

await driver.quit();

מידע נוסף, כולל דוגמאות לשימוש בשפות אחרות, זמין בפוסט בבלוג של צוות Selenium.

משוב

נשמח לקבל ממך משוב על מצב Headless. אם נתקלתם בבעיות, דווחו על באג.