View a markdown version of this page

Utilisation des extensions de navigateur - Amazon Bedrock AgentCore

Utilisation des extensions de navigateur

Les extensions de navigateur vous permettent d'installer des extensions personnalisées dans les sessions de navigateur au moment de leur création. Cela vous permet de personnaliser le comportement du navigateur avec vos propres extensions pour les tâches d'automatisation, le scraping Web, les tests, etc.

Présentation de

Les extensions de navigateur dans Amazon Bedrock AgentCore fonctionnent comme suit :

  1. Vous fournissez une liste des fichiers ZIP d'extension de navigateur stockés dans vos propres compartiments Amazon S3

  2. Le service confirme que vous avez accès à ces objets Amazon S3 à l'aide de vos informations d'identification

  3. Au démarrage de la session du navigateur, les extensions sont téléchargées depuis votre compartiment Amazon S3 et installées dans la session du navigateur

Conditions préalables

Avant d'utiliser les extensions de navigateur, assurez-vous d'avoir :

  • Vous avez terminé les prérequis généraux du navigateur

  • Un compartiment Amazon Amazon S3 pour stocker vos fichiers ZIP d'extension

  • Autorisations IAM pour accéder au compartiment Amazon S3 contenant vos extensions. Ajoutez les autorisations suivantes à votre politique IAM :

    { "Version": "2012-10-17", "Statement": [ { "Sid": "ExtensionS3Access", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::<S3Bucket>/<path_to_extensions>/*" ] } ] }
    Note

    Le compartiment Amazon S3 doit se trouver dans le même AWS compte que la session du navigateur. Les extensions ont une limite de taille de fichier de 10 Mo et un maximum de 10 extensions par session.

Préparation des fichiers d'extension

Pour préparer une extension à utiliser avec Browser Tool :

  1. Création d'une extension Chrome

    Votre extension doit suivre le format d'extension standard de Chromium et respecter les directives relatives aux extensions de Chromium. Chaque extension doit inclure un manifest.json fichier valide.

  2. Création d'un fichier ZIP

    Compressez le contenu du répertoire de l'extension (pas le dossier parent) :

    cd my-extension zip -r ../my-extension.zip.
  3. Téléverser vers S3

    Téléchargez le fichier ZIP dans votre compartiment Amazon S3 :

    aws s3 cp my-extension.zip s3://my-extensions-bucket/extensions/my-extension.zip

Création d'une session de navigateur avec des extensions

Vous pouvez créer une session de navigateur avec des extensions à l'aide de la AWS CLI, du SDK ou de l'API.

Exemple
AWS CLI
  1. Pour démarrer une session de navigateur avec des extensions à l'aide de la AWS CLI :

    aws bedrock-agentcore start-browser-session \ --region <Region> \ --browser-identifier "aws.browser.v1" \ --name "my-session-with-extensions" \ --session-timeout-seconds 1800 \ --extensions '[ { "location": { "s3": { "bucket": "my-extensions-bucket", "prefix": "extensions/my-extension.zip" } } } ]'
Boto3
  1. Pour démarrer une session de navigateur avec des extensions à l'aide du AWS SDK pour Python (Boto3) :

    import boto3 region = "us-west-2" client = boto3.client('bedrock-agentcore', region_name=region) response = client.start_browser_session( browserIdentifier="aws.browser.v1", name="my-session-with-extensions", sessionTimeoutSeconds=1800, viewPort={ 'height': 1080, 'width': 1920 }, extensions=[ { "location": { "s3": { "bucket": "my-extensions-bucket", "prefix": "extensions/my-extension.zip" } } }, { "location": { "s3": { "bucket": "my-extensions-bucket", "prefix": "extensions/another-extension.zip", "versionId": "abc123" # Optional - for versioned S3 buckets } } } ] ) print(f"Session ID: {response['sessionId']}") print(f"Status: {response['status']}") print(f"Automation Stream: {response['streams']['automationStream']['streamEndpoint']}")
API
  1. Pour démarrer une session de navigateur avec des extensions à l'aide de l'API :

    # 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": "my-session-with-extensions", "sessionTimeoutSeconds": 1800, "viewPort": { "height": 1080, "width": 1920 }, "extensions": [ { "location": { "s3": { "bucket": "my-extensions-bucket", "prefix": "extensions/my-extension.zip" } } }, { "location": { "s3": { "bucket": "my-extensions-bucket", "prefix": "extensions/another-extension.zip" } } } ] }'