Parser-Ergebnisse

Browser
Version: —
Betriebssystem
Version: —
Gerätetyp
Formfaktor: —
CPU & Engine
Engine: —
Entwickler-Tools

User Agent Parser

User Agent Strings online parsen und analysieren. Browser, Betriebssystem, Layout-Engine, CPU und Gerätetyp lokal erkennen – ohne Serverübertragung.

Den User-Agent (UA)-String im modernen Web-Ökosystem entschlüsseln

Wenn ein Client (z. B. ein Webbrowser, Webcrawler, Suchmaschinen-Bot oder eine mobile App) eine HTTP-Anfrage an einen entfernten Server sendet, fügt er in der Regel einen Header namens User-Agent hinzu. Dieser Header ist eine Textzeile, die Informationen über den Software-Anwendungstyp, die Layout-Engine, das Betriebssystem und die Hardware-Plattform des Clients liefert. Für Webentwickler, Systemarchitekten und Sicherheitsexperten ist das Parsen dieses Strings entscheidend, um zu bestimmen, wie Web-Traffic ausgeliefert, gesichert oder analysiert werden soll. Allerdings sind User-Agent-Strings berüchtigt dafür, lang, verwirrend und voller historischer Referenzen zu sein, die scheinbar nichts mit dem tatsächlich verwendeten Browser zu tun haben.

Unser clientseitiger User Agent Parser wurde entwickelt, um diese komplexen, aufgeblähten Strings in klare, logische und strukturierte Parameter zu zerlegen. Innerhalb von Sekunden können Sie den primären Browser, seine Haupt- und Nebenversion, das zugrunde liegende Betriebssystem mit spezifischem Build oder Versionsnummer, die zum Rendern der Seite verwendete Layout-Engine, die CPU-Architektur und den Gesamtformfaktor des Geräts identifizieren.

Die seltsame und aufgeblähte Geschichte von Emulation und Kompatibilität

Um zu verstehen, warum moderne User-Agent-Strings wie eine archäologische Ausgrabung des frühen Webs aussehen, muss man in die Mitte der 1990er Jahre zurückreisen. Als Netscape Navigator der führende Browser war, unterstützte er erweiterte Elemente wie HTML-Frames. Webserver waren so konfiguriert, dass sie den User-Agent-Header auf das Schlüsselwort Mozilla (Netscapes interner Projektname) überprüften. War das Schlüsselwort vorhanden, sendete der Server das Frame-basierte Layout; andernfalls lieferte er eine vereinfachte Seite ohne Frames.

Als Microsoft den Internet Explorer veröffentlichte, unterstützte auch dieser Frames. Da sein User-Agent-String jedoch nicht das Token Mozilla enthielt, verweigerten Webserver IE-Nutzern das erweiterte Frame-Layout. Um dieses Problem zu lösen, fügte Microsoft Mozilla/4.0 (compatible; MSIE ...) zum UA-String des Internet Explorers hinzu und gab vor, Mozilla zu sein, um die Server auszutricksen. Dies löste eine jahrzehntelange Kettenreaktion der Emulation aus. Als Apple Safari und seine AppleWebKit-Rendering-Engine veröffentlichte, erklärte Safari sich für kompatibel mit Mozilla, um nicht blockiert zu werden. Später veröffentlichte Google Chrome, das auf WebKit basierte, und fügte die Tokens Chrome und Safari zu seinem String hinzu, um die Kompatibilität mit für Safari optimierten Websites sicherzustellen. Heute sieht ein moderner Chrome-User-Agent so aus: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36

Ein unerfahrener Parser könnte bei diesem String annehmen, dass der Nutzer gleichzeitig Safari, WebKit, KHTML, Gecko, Chrome und Mozilla verwendet. Die Aufgabe eines robusten UA String Parsers ist es, diese Legacy-Linie nachzuverfolgen und die tatsächliche User-Agent-Konfiguration genau zu extrahieren.

Wichtige Komponenten, die der UA-Parser extrahiert

Eine umfassende Analyse eines User-Agent-Strings liefert mehrere wichtige technische Komponenten:

  • Browsername & Version: Isolierung des aktiven Browsers (z. B. Google Chrome, Apple Safari, Mozilla Firefox, Microsoft Edge, Opera oder Internet Explorer) und seiner genauen Versionsnummer.
  • Betriebssystem (OS) & OS-Version: Identifizierung der Client-Plattform (Windows, macOS, Linux, Android, iOS) und Übersetzung von Versionscodes (z. B. Zuordnung von Windows NT 10.0 zu Windows 10/11 oder Mac OS X 10_15_7 zu macOS Catalina).
  • Layout-Rendering-Engine: Bestimmung der Engine, die für das Parsen von HTML/CSS verantwortlich ist (Blink für Chrome/Edge/Opera, WebKit für Safari, Gecko für Firefox und Trident für ältere Internet Explorer-Versionen).
  • Gerätetyp & Formfaktor: Kategorisierung des Hardware-Formfaktors des Geräts (Desktop, Mobil, Tablet, Smart-TV oder Spielkonsole).
  • CPU-Architektur: Parsen von Indikatoren für den Prozessortyp der Hardware (wie AMD64, x86_64, ARM64 oder Intel i386), um die nativen Leistungsfähigkeiten zu verstehen.

Praktische Anwendungsfälle für Entwickler

Das Parsen von User-Agent-Strings ist in verschiedenen Entwicklungsdisziplinen äußerst nützlich:

Sichere clientseitige Ausführung

Sicherheit ist ein großes Anliegen bei der Analyse von Logs oder dem Kopieren/Einfügen aktiver Benutzerdaten. Viele Online-Parser laden User-Agent-Strings zur Verarbeitung auf entfernte Server hoch, was sensible Diagnose-Logs oder Metadaten gefährden kann. Dieses Tool arbeitet vollständig in Ihrer lokalen Browser-Sandbox. Die Parsing-Algorithmen sind in clientseitigem JavaScript geschrieben, sodass die eingegebenen Strings lokal verarbeitet und niemals an unsere Server gesendet werden. Dies gewährleistet vollständige Privatsphäre und keine Datenlecks.

Grenzfälle und der Übergang zu User-Agent Client Hints

Obwohl das Parsen von User-Agents unverzichtbar ist, hat es Einschränkungen. User-Agents können leicht gefälscht werden. Entwickler können Headless-Browser (wie Playwright, Puppeteer oder Selenium) oder Befehlszeilentools (wie curl oder wget) so konfigurieren, dass sie benutzerdefinierte User-Agent-Strings verwenden.

Darüber hinaus bewegen sich Browser-Anbieter in Richtung User-Agent Client Hints (UA-CH). Unter diesem Standard lassen Browser standardmäßig hochauflösende Details (wie spezifische Betriebssystem-Patches oder Browser-Patch-Versionen) weg, um die Privatsphäre der Nutzer vor Fingerprinting zu schützen. Stattdessen geben sie nur niedrigauflösende Signale preis, und der Server muss explizit höherauflösende Daten über HTTP-Response-Header wie Accept-CH anfordern oder asynchron in JavaScript darauf zugreifen. Beispiel:

if (navigator.userAgentData) { navigator.userAgentData.getHighEntropyValues(["platform", "platformVersion"]) .then(ua => { console.log("High Entropy OS Version:", ua.platformVersion); }); }

Während dieser Übergang fortschreitet, müssen Entwickler Parsing-Logik beibehalten, die sowohl klassische User-Agent-Strings als auch die moderne Client-Hints-Struktur verarbeitet.

Häufig Gestellte Fragen

Was ist ein User-Agent-String und welche Informationen enthält er?

Ein User-Agent (UA)-String ist ein Text-Header, den Ihr Browser bei jeder HTTP-Anfrage an Webserver sendet. Er enthält technische Details zu Ihrem Gerät und Ihrer Software: den Browsernamen mit Haupt- und Nebenversion, das Betriebssystem (z.B. Windows, macOS, Android, iOS) inklusive Version, die Rendering-Engine (wie Blink, WebKit oder Gecko) sowie die CPU-Architektur oder den Gerätetyp (Desktop, Mobil oder Tablet).

Wie funktioniert dieser User-Agent-Parser bei der Analyse von Strings?

Dieser Parser extrahiert Schlüssel-Identifikatoren aus einem User-Agent-String mithilfe strukturierter regulärer Ausdrücke. Die Analyse läuft vollständig clientseitig: Sie scannt nach bestimmten Mustern (wie 'Chrome/', 'Version/', 'Windows NT' oder 'Aarch64'), um Browser, Betriebssystem, Layout-Engine, CPU-Architektur und Geräteformfaktor zu isolieren. Anschließend werden Kompatibilitäts-Tokens zugeordnet, um die tatsächliche Client-Software von historischen Emulations-Markern zu unterscheiden.

Warum sind moderne User-Agent-Strings so komplex und aufgebläht?

Historisch gesehen fügten Browser Schlüsselwörter hinzu, um Konkurrenten zu emulieren und restriktive serverseitige User-Agent-Prüfungen zu umgehen. Beispielsweise enthält Chrome die Tokens 'Mozilla/5.0', 'AppleWebKit', 'Safari' und 'Chrome', um von allen Websites unterstützt zu werden. Diese Ansammlung von Legacy-Tokens hat User-Agent-Strings zu komplexen, aufgeblähten Gebilden gemacht, die für eine korrekte Dekodierung ausgefeilte Parsing-Engines erfordern.

Sind meine User-Agent-Daten bei der Nutzung dieses Online-Parsers sicher?

Ja, dieses Tool ist extrem sicher, da es zu 100 % lokal in Ihrem Webbrowser ausgeführt wird. Das Parsing-Skript überträgt, protokolliert oder speichert Ihren User-Agent-String nicht auf einem entfernten Server. Ihre Daten verbleiben vollständig in Ihrer lokalen Browser-Sandbox – ideal für Entwickler, die mit sensiblen internen Logs oder Compliance-restringierten Debugging-Aufgaben arbeiten.

Was sind User-Agent Client Hints (UA-CH) und werden sie UA-Strings ersetzen?

User-Agent Client Hints (UA-CH) sind eine moderne Alternative, die die Privatsphäre der Nutzer verbessern soll, indem sie Browser-Fingerprinting reduziert. Anstatt standardmäßig einen vollständigen, aufgeblähten User-Agent-String zu senden, teilt der Browser zunächst nur minimale Details mit. Der Server muss explizit hochauflösende Details (wie die genaue OS-Version oder CPU-Architektur) anfordern, falls erforderlich. UA-CH ersetzt in modernen Chromium-basierten Browsern schrittweise die herkömmlichen UA-Strings, aber das klassische UA-Parsing bleibt für die Legacy-Kompatibilität weiterhin entscheidend.

Start