Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Gestione delle sessioni del browser
Avvio di una sessione del browser
Dopo aver creato un browser, è possibile avviare una sessione per interagire con le applicazioni Web.
Esempio
- AWS CLI
-
-
Per avviare una sessione del browser utilizzando la AWS CLI, utilizzate il
start-browser-sessioncomando:aws bedrock-agentcore start-browser-session \ --region <Region> \ --browser-identifier "my-browser" \ --name "my-browser-session" \ --session-timeout-seconds 900 \ --view-port width=1456,height=819
-
- Boto3
-
-
Per avviare una sessione del browser utilizzando l' AWS SDK per Python (Boto3), utilizzate il metodo:
start_browser_sessionSintassi della richiesta
Quanto segue mostra la sintassi della richiesta:
response = dp_client.start_browser_session( browserIdentifier="aws.browser.v1", name="browser-session-1", sessionTimeoutSeconds=3600, viewPort={ 'height': 819, 'width': 1456 } )
-
- BrowserClient
-
-
Per avviare una sessione del browser utilizzando la BrowserClient classe per un maggiore controllo sul ciclo di vita della sessione:
from bedrock_agentcore.tools.browser_client import BrowserClient # Create a browser client client = BrowserClient(region="us-west-2") # Start a browser session client.start() print(f"Session ID: {client.session_id}") try: # Generate WebSocket URL and headers url, headers = client.generate_ws_headers() # Perform browser operations with your preferred automation tool finally: # Always close the session when done client.stop()
-
- API
-
-
Per creare una nuova sessione del browser utilizzando l'API, usa la seguente chiamata:
# Using awscurl awscurl -X PUT \ "https://bedrock-agentcore.<Region>.amazonaws.com/browsers/aws.browser.v1/sessions/start" \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ --service bedrock-agentcore \ --region <Region> \ -d '{ "name": "browser-session-abc12345", "description": "browser sandbox session", "sessionTimeoutSeconds": 300, "viewPort": { "height": 819, "width": 1456 } }'
-
Ottieni una sessione del browser
Puoi ottenere informazioni su una sessione del browser che hai creato.
Esempio
- AWS CLI
-
-
Per ottenere informazioni su una sessione del browser utilizzando la AWS CLI, utilizzate il
get-browser-sessioncomando:aws bedrock-agentcore get-browser-session \ --region <Region> \ --browser-identifier "aws.browser.v1" \ --session-id "<your-session-id>"
-
- Boto3
-
-
Per ottenere informazioni su una sessione del browser utilizzando l' AWS SDK per Python (Boto3), usa il metodo:
get_browser_sessionSintassi della richiesta
Quanto segue mostra la sintassi della richiesta:
response = dp_client.get_browser_session( browserIdentifier="aws.browser.v1", sessionId="<your-session-id>" )
-
- API
-
-
Per ottenere informazioni su una sessione del browser utilizzando l'API, usa la seguente chiamata:
# Using awscurl awscurl -X GET \ "https://bedrock-agentcore.<Region>.amazonaws.com/browsers/aws.browser.v1/sessions/get?sessionId=<your-session-id>" \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ --service bedrock-agentcore \ --region <Region> { "browserIdentifier": "aws.browser.v1", "createdAt": "2025-07-14T22:16:40.713152248Z", "lastUpdatedAt": "2025-07-14T22:16:40.713152248Z", "name": "testBrowserSession1752531400", "sessionId": "<your-session-id>", "sessionReplayArtifact": null, "sessionTimeoutSeconds": 900, "status": "TERMINATED", "streams": { "automationStream": { "streamEndpoint": "wss://bedrock-agentcore.<Region>.amazonaws.com/browser-streams/aws.browser.v1/sessions/<your-session-id>/automation", "streamStatus": "ENABLED" }, "liveViewStream": { "streamEndpoint": "https://bedrock-agentcore.<Region>.amazonaws.com/browser-streams/aws.browser.v1/sessions/<your-session-id>/live-view" } }, "viewPort": { "height": 819, "width": 1456 } }
-
Interazione con una sessione del browser
Una volta avviata una sessione del browser, puoi interagire con essa utilizzando l' WebSocket API. Puoi anche utilizzare l' InvokeBrowser API per il controllo diretto a livello di sistema operativo, inclusi clic del mouse, input da tastiera e schermate a schermo intero. Per ulteriori informazioni, consulta Azione del sistema operativo del browser.
Esempio
- Console
-
-
====== Per interagire con una sessione del browser utilizzando la console
-
Passa alla sessione attiva del browser.
-
Utilizza l'interfaccia del browser per navigare nei siti Web, interagire con gli elementi Web ed eseguire altre azioni del browser.
-
È possibile visualizzare l'attività del browser in tempo reale tramite la funzione di visualizzazione live.
-
- SDK
-
-
Per interagire con una sessione del browser a livello di programmazione, utilizza l'API di WebSocket-based streaming con il seguente formato URL:
https://bedrock-agentcore.<Region>.amazonaws.com/browser-streams/{browser_id}/sessions/{session_id}/automationPuoi utilizzare librerie come Playwright per stabilire una connessione WebSocket e controllare il browser. Ecco un esempio:
from playwright.sync_api import sync_playwright, Playwright, BrowserType import os import base64 from bedrock_agentcore.tools.browser_client import browser_session def main(playwright: Playwright): # Keep browser session alive during usage with browser_session('us-west-2') as client: # Generate CDP endpoint and headers ws_url, headers = client.generate_ws_headers() # Connect to browser using headers chromium: BrowserType = playwright.chromium browser = chromium.connect_over_cdp(ws_url, headers=headers) # Use the first available context or create one context = browser.contexts[0] if browser.contexts else browser.new_context() page = context.pages[0] if context.pages else context.new_page() page.goto("https://amazon.com/") print("Navigated to Amazon") # Create CDP session for screenshot cdp_client = context.new_cdp_session(page) screenshot_data = cdp_client.send("Page.captureScreenshot", { "format": "jpeg", "quality": 80, "captureBeyondViewport": True }) # Decode and save screenshot image_data = base64.b64decode(screenshot_data['data']) with open("screenshot.jpeg", "wb") as f: f.write(image_data) print("✅ Screenshot saved as screenshot.jpeg") page.close() browser.close() with sync_playwright() as p: main(p)Il codice di esempio seguente mostra come è possibile eseguire la visualizzazione dal vivo utilizzando l'API di WebSocket-based streaming.
https://bedrock-agentcore.<Region>.amazonaws.com/browser-streams/{browser_id}/sessions/{session_id}/live-viewDi seguito è riportato il codice.
import time from rich.console import Console from bedrock_agentcore.tools.browser_client import browser_session from browser_viewer import BrowserViewerServer console = Console() def main(): try: # Step 1: Create browser session with browser_session('us-west-2') as client: print("\r ✅ Browser ready! ") ws_url, headers = client.generate_ws_headers() # Step 2: Start viewer server console.print("\n[cyan]Step 3: Starting viewer server...[/cyan]") viewer = BrowserViewerServer(client, port=8005) viewer_url = viewer.start(open_browser=True) # Keep running while True: time.sleep(1) except KeyboardInterrupt: console.print("\n\n[yellow]Shutting down...[/yellow]") if 'client' in locals(): client.stop() console.print("✅ Browser session terminated") except Exception as e: console.print(f"\n[red]Error: {e}[/red]") import traceback traceback.print_exc() if __name__ == "__main__": main()
-
Elenco delle sessioni del browser
Puoi elencare tutte le sessioni attive del browser per monitorare e gestire le tue risorse. Ciò è utile per tenere traccia delle sessioni attive, identificare le sessioni di lunga durata o trovare le sessioni che devono essere interrotte.
Esempio
- AWS CLI
-
-
Per elencare le sessioni del browser utilizzando la AWS CLI, usa il
list-browser-sessionscomando:aws bedrock-agentcore list-browser-sessions \ --region <Region> \ --browser-id "<your-browser-id>" \ --max-results 10Puoi anche filtrare le sessioni in base allo stato:
aws bedrock-agentcore list-browser-sessions \ --region <Region> \ --browser-id "<your-browser-id>" \ --status "READY"
-
- Boto3
-
-
Per elencare le sessioni del browser utilizzando l' AWS SDK per Python (Boto3), usa il metodo:
list_browser_sessionsSintassi della richiesta
Quanto segue mostra la sintassi della richiesta:
response = dp_client.list_browser_sessions( browserIdentifier="aws.browser.v1" )Puoi anche filtrare le sessioni in base allo stato:
# List only active sessions filtered_response = dp_client.list_browser_sessions( browserIdentifier="aws.browser.v1", status="READY" ) # Print filtered session information for session in filtered_response['items']: print(f"Ready Session ID: {session['sessionId']}") print(f"Name: {session['name']}") print("---")
-
- API
-
-
Per elencare le sessioni del browser utilizzando l'API, usa la seguente chiamata:
# Using awscurl awscurl -X POST \ "https://bedrock-agentcore.<Region>.amazonaws.com/browsers/<your-browser-id>/sessions/list" \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ --service bedrock-agentcore \ --region <Region> \ -d '{ "maxResults": 10 }'Puoi anche filtrare le sessioni in base allo stato:
# Using awscurl awscurl -X POST \ "https://bedrock-agentcore.<Region>.amazonaws.com/browsers/aws.browser.v1/sessions/list" \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ --service bedrock-agentcore \ --region <Region> \ -d '{ "maxResults": 10, "status": "READY" }'
-
Interruzione di una sessione del browser
Una volta terminata l'utilizzo di una sessione del browser, è necessario interromperla per liberare risorse ed evitare costi inutili.
Esempio
- AWS CLI
-
-
Per interrompere una sessione del browser utilizzando la AWS CLI, utilizzate il
stop-browser-sessioncomando:aws bedrock-agentcore stop-browser-session \ --region <Region> \ --browser-id "<your-browser-id>" \ --session-id "<your-session-id>"
-
- Boto3
-
-
Per interrompere una sessione del browser utilizzando l' AWS SDK per Python (Boto3), usa il metodo:
stop_browser_sessionSintassi della richiesta
Quanto segue mostra la sintassi della richiesta:
response = dp_client.stop_browser_session( browserIdentifier="aws.browser.v1", sessionId="<your-session-id>", )
-
- API
-
-
Per interrompere una sessione del browser utilizzando l'API, utilizzate la seguente chiamata:
# Using awscurl awscurl -X PUT \ "https://bedrock-agentcore.<Region>.amazonaws.com/browsers/aws.browser.v1/sessions/stop?sessionId=<your-session-id>" \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ --service bedrock-agentcore \ --region <Region>
-
Aggiornamento degli stream del browser
Puoi aggiornare i flussi del browser per abilitare o disabilitare l'automazione. Ciò è utile quando devi inserire informazioni sensibili come le credenziali di accesso che non vuoi che l'agente veda.
Esempio
- Boto3
-
-
response = dp_client.update_browser_stream( browserIdentifier="aws.browser.v1", sessionId="<your-session-id>", streamUpdate={ "automationStreamUpdate": { "streamStatus": "DISABLED" # or "ENABLED" } } )
-
- API
-
-
awscurl -X PUT \ "https://bedrock-agentcore.<Region>.amazonaws.com/browsers/aws.browser.v1/sessions/streams/update?sessionId=<your-session-id>" \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ --service bedrock-agentcore \ --region <Region> \ -d '{ "streamUpdate": { "automationStreamUpdate": { "streamStatus": "ENABLED" } } }'
-
- CLI
-
-
aws bedrock-agentcore update-browser-stream \ --region <Region> \ --browser-id "<your-browser-id>" \ --session-id "<your-session-id>" \ --stream-update automationStreamUpdate={streamStatus=ENABLED}
-