User Agent Parser

Parser-Ergebnisse

Browser
Version: —
Betriebssystem
Version: —
Gerätetyp
Formfaktor: —
CPU und Engine
Motor: —
Entwicklertools

Benutzeragenten-Parser

Analysieren und analysieren Sie Browser-User-Agent-Strings sofort. Erkennen Sie Browser-, Betriebssystem-, Layout-Engine-, CPU- und Gerätedetails lokal.

Entmystifizierung des User Agent (UA)-Strings in modernen Web-Ökosystemen

Wenn ein Client (z. B. ein Webbrowser, ein Webcrawler, ein Suchmaschinen-Bot oder eine mobile Anwendung) eine HTTP-Anfrage an einen Remote-Server stellt, enthält diese normalerweise einen Header mit dem Namen User-Agent. Dieser Header ist eine Textzeile, die Informationen über den Softwareanwendungstyp, die Layout-Engine, das Betriebssystem und die Hardwareplattform des Clients bereitstellt. Für Webentwickler, Systemarchitekten und Sicherheitsexperten ist das Parsen dieser Zeichenfolge von entscheidender Bedeutung, um zu bestimmen, wie der Webverkehr bereitgestellt, gesichert oder analysiert wird. Allerdings sind User-Agent-Strings dafür bekannt, lang und verwirrend zu sein und mit historischen Referenzen gefüllt zu sein, die anscheinend keinerlei Bezug zum tatsächlich verwendeten Browser haben.

Unser clientseitiger User Agent Parser ist darauf ausgelegt, diese komplexen, aufgeblähten Zeichenfolgen in klare, logische und strukturierte Parameter zu zerlegen. Innerhalb von Sekunden können Sie den primären Browser, seine Haupt- und Nebenversionen, das zugrunde liegende Betriebssystem und seine spezifische 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 der Emulation und Kompatibilität

Um zu verstehen, warum moderne User-Agent-Strings wie eine archäologische Ausgrabung des frühen Webs aussehen, muss man bis 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 wurden so konfiguriert, dass sie den Header User-Agent auf das Schlüsselwort Mozilla (den internen Projektnamen von Netscape) überprüfen. Wenn das Schlüsselwort vorhanden war, sendete der Server das Frame-basierte Layout. andernfalls wurde eine vereinfachte Seite ohne Frames bereitgestellt.

Als Microsoft den Internet Explorer herausbrachte, unterstützte er auch Frames. Da die Zeichenfolge des Benutzeragenten jedoch nicht das Token Mozilla enthielt, verweigerten Webserver IE-Benutzern das erweiterte Frame-Layout. Um dieses Problem zu lösen, fügte Microsoft Mozilla/4.0 (kompatibel; MSIE ...) zum UA-String des Internet Explorers hinzu und gab sich als Mozilla aus, um die Server auszutricksen. Dies löste eine jahrzehntelange Kettenreaktion der Nachahmung aus. Als Apple Safari und seine AppleWebKit-Rendering-Engine veröffentlichte, erklärte Safari, dass es mit Mozilla kompatibel sei, um einer Blockierung zu entgehen. Später veröffentlichte Google Chrome, das auf WebKit aufbaute, und fügte seinem String Chrome- und Safari-Tokens hinzu, um die Kompatibilität mit für Safari optimierten Websites sicherzustellen. Heutzutage sieht ein moderner Chrome-Benutzeragent 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 uneingeweihter Parser könnte sich diese Zeichenfolge ansehen und daraus schließen, dass der Benutzer gleichzeitig Safari, WebKit, KHTML, Gecko, Chrome und Mozilla ausführt. Die Rolle eines robusten UA-String-Parsers besteht darin, diese Legacy-Abstammung zu verfolgen und die wahre Benutzeragentenkonfiguration genau zu extrahieren.

Vom UA-Parser extrahierte Schlüsselkomponenten

Eine umfassende Analyse einer Benutzeragentenzeichenfolge liefert mehrere wichtige technische Komponenten:

  • Browsername und -version: Isolieren des aktiven Browsers (z. B. Google Chrome, Apple Safari, Mozilla Firefox, Microsoft Edge, Opera oder Internet Explorer) und seiner genauen Versionsnummer.
  • Betriebssystem (OS) und Betriebssystemversion: Identifizieren der Client-Plattform (Windows, macOS, Linux, Android, iOS) und Übersetzen von Versionscodes (z. B. Zuordnen von Windows NT 10.0 zu Windows 10/11 oder Zuordnen von Mac OS X 10_15_7 zu macOS Catalina).
  • Layout Rendering Engine: Lokalisierung 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 und Formfaktor: Kategorisierung des Hardware-Formfaktors des Geräts (Desktop, Mobilgerät, Tablet, Smart-TV oder Spielekonsole).
  • CPU-Architektur: Analysieren von Indikatoren des Prozessortyps der Hardware (z. B. AMD64, x86_64, ARM64 oder Intel i386), um die nativen Leistungsfähigkeiten zu verstehen.

Praktische Anwendungsfälle für Entwickler

Das Parsen von Benutzeragentenzeichenfolgen ist in mehreren Entwicklungsdisziplinen von großem Nutzen:

Sichere clientseitige Ausführung

Bei der Analyse von Protokollen oder beim Kopieren und Einfügen aktiver Benutzerdaten ist die Sicherheit ein wichtiges Anliegen. Viele Online-Parser laden Benutzeragentenzeichenfolgen zur Verarbeitung auf Remote-Server hoch, wodurch die Gefahr besteht, dass vertrauliche Diagnoseprotokolle oder Metadaten offengelegt werden. Dieses Tool arbeitet vollständig in Ihrer lokalen Browser-Sandbox. Die Parsing-Algorithmen sind in clientseitigem JavaScript geschrieben, was bedeutet, dass die von Ihnen eingegebenen Zeichenfolgen lokal verarbeitet und niemals an unsere Server gesendet werden. Dies gewährleistet absolute Privatsphäre und verhindert Datenlecks.

Randfälle und der Übergang zu User-Agent-Client-Hinweisen

Das Parsen von Benutzeragenten ist zwar unverzichtbar, weist jedoch Einschränkungen auf. Benutzeragenten können leicht gefälscht werden. Entwickler können Headless-Browser (wie Playwright, Puppeteer oder Selenium) oder Befehlszeilen-Dienstprogramme (wie curl oder wget) so konfigurieren, dass sie benutzerdefinierte Benutzeragentenzeichenfolgen verwenden.

Darüber hinaus setzen Browser-Anbieter auf User-Agent Client Hints (UA-CH). Nach diesem Standard lassen Browser standardmäßig Details mit hoher Entropie (z. B. bestimmte Betriebssystem-Patches oder Browser-Patch-Versionen) weg, um die Privatsphäre der Benutzer vor Fingerabdrücken zu schützen. Stattdessen legen sie Signale mit niedriger Entropie offen, und der Server muss explizit Daten mit höherer Entropie über HTTP-Antwortheader wie Accept-CH anfordern oder asynchron in Javascript darauf zugreifen. Zum Beispiel:

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

Während dieser Übergang voranschreitet, müssen Entwickler eine Parsing-Logik beibehalten, die sowohl klassische Benutzeragentenzeichenfolgen als auch moderne Client-Hinweisstrukturen verarbeitet.

Häufig Gestellte Fragen

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

Eine User Agent (UA)-Zeichenfolge ist ein Textheader, der von Ihrem Browser bei jeder HTTP-Anfrage an Webserver gesendet wird. Es enthält spezifische technische Details zu Ihrem Gerät und Ihrer Software, einschließlich des Namens des Webbrowsers und der Haupt-/Nebenversionen, des Betriebssystems (z. B. Windows, macOS, Android, iOS) und seiner Version, der Rendering-Layout-Engine (wie Blink, WebKit oder Gecko) sowie der CPU-Architektur oder des Gerätetyps (Desktop, Mobilgerät oder Tablet).

Wie verarbeitet und analysiert dieser User Agent Parser Zeichenfolgen?

Dieser Parser extrahiert mithilfe strukturierter regulärer Ausdrücke Schlüsselidentifizierungstoken aus einer Benutzeragentenzeichenfolge. Es läuft vollständig clientseitig und sucht nach bestimmten Mustern (z. B. „Chrome/“, „Version/“, „Windows NT“ oder „Aarch64“), um Browser, Betriebssystem, Layout-Engine, CPU-Architektur und Geräteformfaktor zu isolieren. Anschließend werden Kompatibilitätstoken zugeordnet, um die tatsächliche Client-Software im Vergleich zu historischen Emulations-Tags zu ermitteln.

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

In der Vergangenheit fügten Browser Schlüsselwörter hinzu, um Konkurrenten nachzuahmen und restriktive serverseitige Benutzeragentenprüfungen zu umgehen. Chrome enthält beispielsweise Schlüsselwörter wie „Mozilla/5.0“, „AppleWebKit“, „Safari“ und „Chrome“, um sicherzustellen, dass Websites es unterstützen. Durch diese Anhäufung von Legacy-Tokens sind User-Agent-Strings zu komplexen, aufgeblähten Strings geworden, für deren korrekte Dekodierung ausgefeilte Parsing-Engines erforderlich sind.

Sind meine User-Agent-Daten sicher, wenn ich diesen Online-Parser verwende?

Ja, dieses Tool ist äußerst sicher, da es zu 100 % lokal in Ihrem Webbrowser ausgeführt wird. Das Parsing-Skript überträgt, protokolliert oder speichert Ihre Benutzeragentenzeichenfolge nicht auf einem Remote-Server. Ihre Daten bleiben vollständig in Ihrer lokalen Browser-Sandbox und sind somit sicher für Entwickler, die sensible interne Protokolle oder Compliance-beschränkte Debugging-Aufgaben bearbeiten.

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

User-Agent Client Hints (UA-CH) sind eine moderne Alternative zur Verbesserung der Privatsphäre der Benutzer durch Reduzierung des Browser-Fingerabdrucks. Anstatt standardmäßig eine vollständige, aufgeblähte User-Agent-Zeichenfolge zu senden, teilt der Browser zunächst nur minimale Details mit. Der Server muss bei Bedarf explizit Details zu hoher Entropie anfordern (z. B. die genaue Betriebssystemversion oder CPU-Architektur). UA-CH ersetzt nach und nach Standard-UA-Strings in modernen Chromium-basierten Browsern, aber das traditionelle UA-Parsing bleibt für die Legacy-Kompatibilität von entscheidender Bedeutung.

Start