Aktion des Browserbetriebssystems
Die InvokeBrowser API bietet direkte Kontrolle über Amazon Bedrock AgentCore Browser-Sitzungen auf Betriebssystemebene. Der WebSocket-based Automatisierungsendpunkt verwendet zwar DevTools das Chrome-Protokoll (CDP) für die Browserinteraktion, InvokeBrowser arbeitet aber auf Betriebssystemebene und ermöglicht Aktionen, die CDP nicht ausführen kann — wie die Interaktion mit Druckdialogen, Tastenkombinationen, Kontextmenüs mit der rechten Maustaste, JavaScript Benachrichtigungen und das Aufnehmen von Screenshots im Vollbildmodus.
-Übersicht
Der Amazon Bedrock AgentCore Browser bietet zwei Möglichkeiten, mit einer Browsersitzung zu interagieren:
-
WebSocket-based Automatisierung (CDP): Verwendet das DevTools Chrome-Protokoll über eine WebSocket Verbindung. Dies ist ideal für Standardaufgaben zur Browserautomatisierung wie das Navigieren auf Seiten, das Klicken auf DOM-Elemente, das Ausfüllen von Formularen und das Extrahieren von Seiteninhalten. Bibliotheken wie Playwright und Browser-Use stellen über diesen Endpunkt eine Verbindung her.
-
OS-level actions (InvokeBrowser): Verwendet eine REST-API, um Interaktionen auf Betriebssystemebene über Maus-, Tastatur- und Screenshot-Aktionen durchzuführen. Dies ergänzt CDP durch die Behandlung von Szenarien, in denen die Automatisierung auf Browserebene unzureichend ist.
Verwenden Sie InvokeBrowser es, wenn Ihr Agent:
-
Interagieren Sie mit systemeigenen Betriebssystemdialogfeldern wie Druckdialogen, upload/download Dateidialogfeldern oder Authentifizierungsaufforderungen, die sich außerhalb des Browser-DOM befinden
-
Verwerfen Sie JavaScript Warnungen, Bestätigungen oder Eingabeaufforderungen, die die CDP-Ausführung blockieren
-
Verwenden Sie Tastenkombinationen (z. B. Strg+A, Strg+P), die ein Verhalten auslösen OS-level
-
Interagieren Sie mit Rechtsklick-Kontextmenüs, die vom Betriebssystem gerendert werden
-
Erfassen Sie vollständige Desktop-Screenshots, die Inhalte außerhalb des Browser-Viewports enthalten, wie z. B. Betriebssystembenachrichtigungen oder Layouts mit mehreren Fenstern
-
Führen Sie Drag-and-Drop-Operationen durch, die sich über Browserfenster oder zwischen Browser und Desktop erstrecken
InvokeBrowser folgt dem gleichen Muster wie InvokeCodeInterpreter: ein einziger einheitlicher Vorgang mit Versand vom Typ Aktion. Sie senden eine Anfrage mit genau einer Aktion und erhalten ein entsprechendes Ergebnis.
Unterstützte Aktionen
InvokeBrowser unterstützt über die BrowserAction Union die folgenden Aktionstypen. Pro Anfrage muss genau ein Aktionsmitglied festgelegt werden.
Aktionen mit der Maus
Bei allen Mausaktionen müssen die Koordinatenwerte (x,y) genau innerhalb der Grenzen des Viewports der Browsersitzung liegen. Gültige Bereiche sind 1 < x < Viewport Width-2 und 1 < y < Viewport. Height-2 Die Standardgröße des Viewports ist 1456×819 Pixel. Sie kann beim Starten einer Sitzung mithilfe des Parameters konfiguriert werden. viewPort
| Action | Pflichtfelder | Optionale Felder | Description |
|---|---|---|---|
|
|
|
|
Klicken Sie auf die angegebenen Koordinaten. |
|
|
|
— |
Bewegt den Cursor zu den angegebenen Koordinaten. |
|
|
|
|
Ziehen Sie von der Start- zur Endposition. |
|
|
|
|
Scrollen Sie an der angegebenen Position. |
Aktionen auf der Tastatur
| Action | Pflichtfelder | Optionale Felder | Description |
|---|---|---|---|
|
|
|
— |
Geben Sie eine Textfolge ein. Maximale Länge: 10.000 Zeichen. |
|
|
|
|
Drücken Sie N-mal eine Taste. |
|
|
|
— |
Drücken Sie eine Tastenkombination (z. B. |
Screenshot-Aktion
| Action | Pflichtfelder | Optionale Felder | Description |
|---|---|---|---|
|
|
— |
|
Erfassen Sie den gesamten Betriebssystem-Desktop (nicht nur den Browser-Viewport). Format: Nur PNG. |
Überlegungen
-
ASCII-only Texteingabe: Die
keyTypeAktion unterstützt nur ASCII-Zeichen. Non-ASCII Zeichen (wie Unicode- oder Multibyte-Zeichen) werden bei der Eingabe übersprungen. -
Keine Überprüfung von Schlüsselnamen: Die
keyShortcutAktionenkeyPressund überprüfen nicht, ob die angegebenen Schlüsselnamen unterstützt werden. Wenn Sie einen unbekannten Schlüsselnamen angeben, gibt die API den Status SUCCESS zurück, ohne die beabsichtigte Aktion auszuführen. Sehen Sie sich die oben aufgeführten unterstützten Schlüsselnamen an. -
Unterstützte Schlüsselnamen: Die Schlüsselnamen für
keyPressundkeyShortcutAktionen müssen in Kleinbuchstaben geschrieben werden. Zu den unterstützten Schlüsseln gehören einzelne Zeichen (a0—z, —9) und benannte Schlüssel wieentertab,,space,backspace,delete,escape,ctrlalt,shift.
Anforderungs- und Antwortformate
Anforderung
POST /browsers/{browserIdentifier}/sessions/invoke HTTP/1.1 x-amzn-browser-session-id: sessionId Content-type: application/json
Der Anfragetext enthält ein action Feld mit genau einem Mitglied des BrowserAction Union-Sets:
{ "action": { "mouseClick": { "x": 100, "y": 200, "button": "LEFT", "clickCount": 1 } } }
Antwort
Das sessionId wird über den x-amzn-browser-session-id Antwort-Header zurückgegeben. Der Antworttext enthält ein result Feld mit dem entsprechenden Aktionsergebnis.
Bei Erfolg:
{ "result": { "mouseClick": { "status": "SUCCESS", "error": null } } }
Bei einem Fehler wird das status Feld auf FAILED gesetzt und das error Feld enthält eine Beschreibung des Fehlers.
Beispiele
Die folgenden Beispiele zeigen, wie Browseraktionen mithilfe der AWS CLI, des AWS SDK for Python (Boto3) und der API aufgerufen werden.