> ## Documentation Index
> Fetch the complete documentation index at: https://gologin.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Headless-Modus

Ein Headless-Browser ist ein Webbrowser ohne grafische Benutzeroberfläche (GUI). Er läuft im Hintergrund und wird programmgesteuert über Code oder Befehlszeilenschnittstellen bedient. Headless-Browser können alle üblichen Browser-Aufgaben ausführen, etwa Webseiten rendern, JavaScript ausführen und Cookies verarbeiten, zeigen dabei aber keine visuellen Elemente an.

## Typische Anwendungsfälle

* Web Scraping und Datenextraktion
* Automatisierte Tests von Webanwendungen
* Screenshots erstellen oder Webseiten als PDF speichern
* Performance-Monitoring und -Tests
* Automatisierung wiederkehrender Aufgaben im Web

## Vorteile

* Geringerer Ressourcenverbrauch (kein GUI-Rendering erforderlich)
* Schnellere Ausführung als bei vollständigen Browser-Instanzen
* Ideal für Server-Umgebungen ohne Anzeigemöglichkeit
* Bestens geeignet für CI/CD-Pipelines und automatisierte Workflows

Headless-Browser werden häufig in Entwicklertools, Test-Frameworks und Automatisierungsdiensten eingesetzt, um programmgesteuert mit Webinhalten zu interagieren.

# Headless-Beispiel

**Check trustworthiness status**

```js Node.js theme={null}
// SDK will prepare the browser and will start it on your machine then you can control it with puppeteer
import { GologinApi } from 'gologin';

const token = process.env.GL_API_TOKEN || 'your dev token here';
const gologin = GologinApi({
  token,
});

async function main() {
  const { browser } = await gologin.launch({
    extra_params: ['--headless'],
    // pass profileId parameter if you want to run particular profile
    // profileId: 'your profileId here',
  });

  const page = await browser.newPage();

  await page.goto('https://iphey.com/', { waitUntil: 'networkidle2' });
  const status = await page.$eval('.trustworthy:not(.hide)',
    (elt) => elt?.innerText?.trim(),
  );

  await new Promise((resolve) => setTimeout(resolve, 10000));
  console.log('status', status);

  return status;
}

main().catch(console.error)
  .finally(gologin.exit);
```

```python Python theme={null}
import time
from gologin import GoLogin
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager


# Initialize GoLogin
gl = GoLogin({
	"token": "your dev token",
  "extra_params": ["--headless"]
})
profile = gl.createProfileRandomFingerprint({ "os": "win" })
profile_id = profile.get('id')
gl.setProfileId(profile_id)
# Add proxy to the profile
gl.addGologinProxyToProfile(profile_id, "us")

# Start Browser and get websocket url
debugger_address = gl.start()

# Get Chromium version for webdriver
chromium_version = gl.get_chromium_version()


# Install webdriver
service = Service(ChromeDriverManager(driver_version=chromium_version).install())

chrome_options = webdriver.ChromeOptions()
chrome_options.add_experimental_option("debuggerAddress", debugger_address)

driver = webdriver.Chrome(service=service, options=chrome_options)

# Give command to Selenium to open the page
driver.get("http://www.python.org")

time.sleep(30)
driver.quit()
time.sleep(10)

gl.delete(profile_id)

gl.stop()

```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.