As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Ação do sistema operacional do navegador
A InvokeBrowser API fornece controle direto em nível de sistema operacional sobre as sessões do Amazon Bedrock AgentCore Browser. Embora o endpoint de WebSocket-based automação use o DevTools protocolo Chrome (CDP) para interação com o navegador, InvokeBrowser opera no nível do sistema operacional, permitindo ações que o CDP não pode manipular, como interagir com diálogos de impressão, atalhos de teclado, menus de contexto com o botão direito do mouse, alertas e captura de capturas de tela em tela cheia. JavaScript
Visão geral do
O Amazon Bedrock AgentCore Browser oferece duas maneiras de interagir com uma sessão do navegador:
-
WebSocket-based automação (CDP): usa o DevTools protocolo Chrome em uma WebSocket conexão. Isso é ideal para tarefas padrão de automação do navegador, como navegar em páginas, clicar em elementos DOM, preencher formulários e extrair conteúdo da página. Bibliotecas como o Playwright e o uso do navegador se conectam por meio desse endpoint.
-
OS-level actions (InvokeBrowser): usa uma API REST para realizar interações no nível do sistema operacional por meio de ações de mouse, teclado e captura de tela. Isso complementa o CDP ao lidar com cenários em que a automação no nível do navegador é insuficiente.
Use InvokeBrowser quando seu agente precisar:
-
Interaja com caixas de diálogo nativas do sistema operacional, como caixas de diálogo de impressão, caixas de diálogo de arquivos ou solicitações de autenticação que upload/download estão fora do DOM do navegador
-
Ignore JavaScript alertas, confirmações ou solicitações que bloqueiem a execução do CDP
-
Use atalhos de teclado (por exemplo, ctrl+a, ctrl+p) que acionam o comportamento OS-level
-
Interaja com os menus de contexto do botão direito do mouse renderizados pelo sistema operacional
-
Capture capturas de tela completas da área de trabalho que incluam conteúdo fora da janela de visualização do navegador, como notificações do sistema operacional ou layouts de várias janelas
-
Execute operações de arrastar e soltar que abrangem as janelas do navegador ou entre o navegador e a área de trabalho
InvokeBrowser segue o mesmo padrão de InvokeCodeInterpreter: uma única operação unificada com despacho do tipo ação. Você envia uma solicitação com exatamente uma ação e recebe um resultado correspondente.
Ações compatíveis
InvokeBrowser suporta os seguintes tipos de ação por meio da BrowserAction união. Exatamente um membro da ação deve ser definido por solicitação.
Ações do mouse
Para todas as ações do mouse, os valores das coordenadas (x,y) devem estar estritamente dentro dos limites da janela de visualização da sessão do navegador. Os intervalos válidos são 1 < x < viewport Width-2 e 1 < y < Height-2 viewport. O tamanho padrão da janela de visualização é de 1456 × 819 pixels, que pode ser configurado ao iniciar uma sessão usando o parâmetro. viewPort
| Ação | Campos obrigatórios | Campos opcionais | Description |
|---|---|---|---|
|
|
|
|
Clique nas coordenadas especificadas. |
|
|
|
— |
Mova o cursor para as coordenadas especificadas. |
|
|
|
|
Arraste da posição inicial para a final. |
|
|
|
|
Role na posição especificada. |
Ações do teclado
| Ação | Campos obrigatórios | Campos opcionais | Description |
|---|---|---|---|
|
|
|
— |
Digite uma sequência de texto. Tamanho máximo: 10.000 caracteres. |
|
|
|
|
Pressione uma tecla N vezes. |
|
|
|
— |
Pressione uma combinação de teclas (por exemplo, |
Ação de captura de tela
| Ação | Campos obrigatórios | Campos opcionais | Description |
|---|---|---|---|
|
|
— |
|
Capture toda a área de trabalho do sistema operacional (não apenas a janela de visualização do navegador). Formato: somente PNG. |
Considerações
-
ASCII-only entrada de texto: a
keyTypeação suporta somente caracteres ASCII. Non-ASCII caracteres (como Unicode ou caracteres de vários bytes) são ignorados durante a entrada. -
Sem validação de nome de chave: as
keyShortcutaçõeskeyPresse não validam se os nomes de chave especificados são suportados. Se você fornecer um nome de chave não reconhecido, a API retornará um status SUCCESS sem realizar a ação pretendida. Consulte os nomes das chaves compatíveis listados acima. -
Nomes de chaves compatíveis: os nomes das chaves
keyPressekeyShortcutas ações devem estar em minúsculas. As chaves suportadas incluem caracteres únicos (a0—z, —9) e chaves nomeadasenter, comotab,space,backspace,delete,escape,ctrl,alt,shift.
Formato de solicitação e resposta
Solicitação
POST /browsers/{browserIdentifier}/sessions/invoke HTTP/1.1 x-amzn-browser-session-id: sessionId Content-type: application/json
O corpo da solicitação contém um action campo com exatamente um membro do conjunto de BrowserAction uniões:
{ "action": { "mouseClick": { "x": 100, "y": 200, "button": "LEFT", "clickCount": 1 } } }
Resposta
O sessionId é retornado por meio do cabeçalho de x-amzn-browser-session-id resposta. O corpo da resposta contém um result campo com o resultado da ação correspondente.
Sobre o sucesso:
{ "result": { "mouseClick": { "status": "SUCCESS", "error": null } } }
Em caso de falha, o status campo é definido como error FAILED e contém uma descrição da falha.
Exemplos
Os exemplos a seguir mostram como invocar ações do navegador usando a AWS CLI, o AWS SDK para Python (Boto3) e a API.