View a markdown version of this page

Robot Web - Amazon Bedrock

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Robot Web

Le Web Crawler se connecte aux URL que vous spécifiez pour les utiliser dans votre base de connaissances gérée et les analyse. Le Web Crawler parcourt les pages HTML à partir de vos URL de départ, en suivant des liens secondaires en fonction de l'étendue et des limites de votre exploration. Vous pouvez également fournir des URL de plan de site comme points de départ. Le Web Crawler respecte robots.txt conformément à la norme RFC 9309.

Important

Lorsque vous sélectionnez des sites Web à explorer, vous devez respecter la Politique d'utilisation acceptable d'Amazon et toutes les autres conditions d'Amazon. Utilisez le Web Crawler uniquement pour indexer vos propres pages Web ou les pages Web que vous êtes autorisé à explorer.

Note

Le Web Crawler ne prend pas en charge le contrôle d'accès au niveau des documents (ACL). Tout le contenu indexé est accessible à tout utilisateur ayant accès à la base de connaissances. Si vous avez besoin d'un filtrage ACL, utilisez un connecteur qui le prend en charge (par exemple, Amazon S3 SharePoint, ou OneDrive).

Fonctionnalités prises en charge

  • Explorez plusieurs URL de départ et URL de plan de site

  • Profondeur d'exploration, limite de débit et limite de liens par URL configurables

  • Contrôle de l'étendue du crawl : même hôte et même chemin, hôte uniquement, ou hôte et sous-domaines

  • Filtres de modèles d'URL (expressions régulières d'inclusion et d'exclusion)

  • Explorez les pièces jointes liées à des pages Web (PDF, documents, etc.)

  • Authentification pour les sites protégés : de base, basée sur un formulaire ou SAML

  • Synchronisation incrémentielle du contenu ajouté, mis à jour et supprimé

Méthodes d’authentification

Le Web Crawler prend en charge quatre méthodes d'authentification. Choisissez la méthode qui correspond à la manière dont le site cible authentifie les utilisateurs. Pour les sites publics sans connexion, utilisezNO_AUTH.

Méthodes d'authentification du Web Crawler
Méthode Comment il s'authentifie Quand l’utiliser
Aucune authentification (NO_AUTH) Le robot envoie des requêtes sans informations d'identification. Sites Web publics qui ne nécessitent pas de connexion.
Authentification de base (BASIC_AUTH) Le robot envoie un Authorization: Basic en-tête HTTP contenant un nom d'utilisateur et un mot de passe provenant de votre secret. Sites protégés par l'authentification HTTP de base (boîte de dialogue du nom d'utilisateur et du mot de passe de style navigateur).
Authentification par formulaire (FORM) Le robot se connecte en soumettant un formulaire HTML. Vous fournissez l'URL de connexion, les informations d'identification et les expressions XPath qui localisent les champs du formulaire. Sites qui utilisent un formulaire HTML pour se connecter.
Authentification SAML () SAML Le robot se connecte via le formulaire de connexion d'un fournisseur d'identité SAML. Vous fournissez l'URL de connexion de l'IdP, les informations d'identification et les expressions XPath qui localisent les champs du formulaire. Sites qui utilisent l'authentification SAML-based unique.

Conditions préalables

Pour le site Web que vous souhaitez explorer, assurez-vous de :

  • Avoir l'autorisation d'explorer le site Web et son contenu.

  • Vérifiez que robots.txt les URL que vous souhaitez explorer ne sont pas interdites pour le site. Par défaut, le Web Crawler interdit si un robots.txt fichier est introuvable.

  • Si le site nécessite une connexion, identifiez la méthode d'authentification (de base, formulaire ou SAML). Pour le formulaire et le SAML, recherchez les expressions XPath pour le champ du nom d'utilisateur, le champ du mot de passe et le bouton d'envoi sur la page de connexion. Pour trouver un XPath, ouvrez le menu contextuel (clic droit) de l'élément de formulaire dans votre navigateur et choisissez Inspect, puis copiez le XPath à partir des outils de développement.

Dans votre AWS compte, assurez-vous de  :

Comment configurer une source de données Web Crawler

La configuration d'une source de données Web Crawler implique les étapes suivantes :

  1. (Si votre site nécessite une connexion) Préparez les informations d'identification. Conservez les informations d'identification de votre méthode d'authentification de AWS Secrets Manager manière secrète. Consultez Informations d’identification d’authentification.

  2. Connectez la source de données. Créez la source de données Web Crawler dans la base de connaissances à l'aide de l'API Console de gestion AWS ou de l'API. Consultez Création de la source de données.

Création de la source de données

Console
Pour connecter le Web Crawler à votre base de connaissances gérée
  1. Sous Source de données, donnez un nom à votre source de données.

  2. Sélectionnez Web Crawler dans la liste déroulante des sources de données.

  3. Sous Source, choisissez URL source (jusqu'à 10 URL de point de départ) ou plans de site source (jusqu'à 3 URL de plan de site).

  4. Entrez vos URL dans la zone de texte Ajouter des URL, une par ligne.

  5. Sous Authentification, sélectionnez Aucune authentification, Authentification de base, Authentification par formulaire ou Authentification SAML. Pour toute méthode autre que l'absence d'authentification, sélectionnez ou créez un AWS Secrets Manager secret pour stocker vos informations d'identification.

  6. (Facultatif) Étendez la portée de synchronisation pour définir la profondeur d'analyse (0 à 10), le nombre maximal de liens par URL (1 à 1 000), le nombre maximal d'URL explorées par minute (1 à 300) et l'étendue de l'analyse : par défaut (même hôte et même chemin d'URL initial que l'URL de départ), Hôte uniquement (même hôte, n'importe quel chemin) ou Sous-domaines (même domaine principal, y compris les sous-domaines).

  7. (Facultatif) Développez les modèles de filtre d'URL pour ajouter des expressions régulières qui incluent ou excluent des URL spécifiques.

API

Pour créer une source de données Web Crawler, envoyez une CreateDataSource demande avec un point de terminaison Agents for Amazon Bedrock build-time. L' AWS Command Line Interface exemple suivant crée une source de données qui explore un site public sans authentification. Pour une description de chaque champ, reportez-vous à la référence des paramètres du connecteur qui suit.

aws bedrock-agent create-data-source \ --name "WebCrawler-connector" \ --knowledge-base-id "your-knowledge-base-id" \ --data-source-configuration file://webcrawler-managed-connector.json

Le webcrawler-managed-connector.json fichier contient les éléments suivants :

{ "type": "MANAGED_KNOWLEDGE_BASE_CONNECTOR", "managedKnowledgeBaseConnectorConfiguration": { "connectorParameters": { "type": "WEB", "version": "1", "connectionConfiguration": { "seedUrls": [ "https://docs.example.com" ], "authType": "NO_AUTH" }, "crawlConfiguration": { "crawlDepth": 3, "maxLinksPerUrl": 100, "maxCrawledUrlsPerMinute": 50, "syncScope": "SUB_DOMAINS", "crawlAttachments": true }, "filterConfiguration": { "exclusionPatterns": [ "https://docs.example.com/private/.*" ] } } } }

Pour un site authentifié, définissez authType sur BASIC_AUTHFORM, ouSAML, et ajoutez un secretArn àconnectionConfiguration.

Pour les bases de connaissances gérées, CreateDataSource est asynchrone : l'état de la source de données passe du statut de la source de données CREATING à la AVAILABLE fin de l'opération.

Paramètres du connecteur

La configuration de la source de données utilise les paramètres de connecteur suivants. Pour utiliser le Web Crawler, spécifiez WEB le type de connecteur dansconnectorParameters. Pour les champs encapsulés connectorParameters (tels que deletionProtectionConfiguration etmediaExtractionConfiguration), consultezConnexion d’une sources de données.

connectionConfiguration
Champ Obligatoire Description
seedUrls Conditionnel Liste des URL de départ à partir desquelles commencer à explorer. Maximum de 10. Obligatoire sauf si vous le fournissezsiteMapUrls.
siteMapUrls Conditionnel Liste des URL du plan du site. Maximum de 3. Obligatoire sauf si vous le fournissezseedUrls.
authType Oui Type d'authentification : NO_AUTHBASIC_AUTH,FORM, ouSAML. Consultez Méthodes d’authentification.
secretArn Conditionnel L'ARN du AWS Secrets Manager secret contenant vos informations d'identification. Obligatoire lorsque authType cela ne l'est pasNO_AUTH.
Configuration du crawl (facultatif)
Champ Obligatoire Description
crawlDepth Non Profondeur de rampe maximale. Plage de 0 à 10. 0explore uniquement les URL spécifiées ; les valeurs les plus élevées suivent les liens situés plus en profondeur dans le site. La valeur par défaut est 2 .
maxLinksPerUrl Non Nombre maximum de liens à suivre par URL. Plage de 1 à 1 000. La valeur par défaut est 100 .
maxCrawledUrlsPerMinute Non Nombre maximum d'URL explorées par minute (limite de débit). Gamme 1 à 300.
implicitWaitInSeconds Non Temps d'attente, en secondes, après qu'une page soit prête avant que le robot d'exploration ne la lise. Augmentez cette valeur pour les pages dont JavaScript le contenu dynamique se charge après le modèle principal.
syncScope Non L'étendue des liens à suivre. L'un des PATH_SPECIFIC suivants : (même hôte et même chemin d'URL initial que l'URL de départ), DOMAINS_ONLY (même hôte que l'URL de départ, quel que soit le chemin) ou SUB_DOMAINS (même domaine principal, y compris les sous-domaines). En cas d'omission, le robot explore uniquement le même hôte et le même chemin URL initial que l'URL de départ.
crawlAttachments Non Indique s'il faut analyser les fichiers et les pièces jointes liés à des pages Web (telles que des PDF et d'autres documents).
Configuration du filtre (facultatif)
Champ Obligatoire Description
inclusionPatterns Non Liste d'expressions régulières. Seules les URL qui correspondent à au moins un modèle sont explorées et indexées.
exclusionPatterns Non Liste d'expressions régulières. Les URL qui correspondent à un modèle quelconque ne sont ni explorées ni indexées.
maxFileSizeInMegaBytes Non Taille maximale, en mégaoctets, de tout fichier ingéré par le robot d'exploration. Fournissez-la sous forme de chaîne numérique (par exemple,"500"). La valeur par défaut est "500" .

Informations d’identification d’authentification

Si votre site Web nécessite une authentification, conservez vos informations d'identification de AWS Secrets Manager manière secrète. Le format secret dépend du type d'authentification que vous choisissez.

Authentification de base (BASIC_AUTH)

{ "userName": "your-username", "password": "your-password", "authentication": "BASIC_AUTH" }

Authentification par formulaire (FORM)

Pour l'authentification basée sur un formulaire, fournissez des expressions XPath qui identifient le champ du nom d'utilisateur, le champ du mot de passe et le bouton d'envoi sur la page de connexion.

{ "authentication": "FORM", "loginPageUrl": "https://example.com/login", "userName": "your-username", "password": "your-password", "userNameFieldXpath": "//input[@name='username']", "passwordFieldXpath": "//input[@name='password']", "userNameButtonXpath": "//button[@type='submit']", "passwordButtonXpath": "//button[@type='submit']" }

Authentification SAML () SAML

Pour l'authentification SAML, indiquez l'URL de la page de connexion du fournisseur d'identité SAML et les expressions XPath pour les champs du formulaire.

{ "authentication": "SAML", "loginPageUrl": "https://your-idp.example.com/login", "userName": "your-username", "password": "your-password", "userNameFieldXpath": "//input[@name='username']", "passwordFieldXpath": "//input[@name='password']", "userNameButtonXpath": "//button[@type='submit']", "passwordButtonXpath": "//button[@type='submit']" }
Note

Pour trouver un XPath dans votre navigateur, ouvrez le menu contextuel (clic droit) de l'élément de formulaire sur la page de connexion et choisissez Inspect. Dans les outils de développement, ouvrez le menu contextuel (clic droit) pour le code HTML surligné, puis choisissez Copier, puis choisissez Copier XPath.

Résolution des problèmes

Problèmes courants, causes et correctifs liés au Web Crawler
Symptôme Cause probable Corriger
La synchronisation s'effectue correctement mais seule l'URL de départ est indexée. Les liens de navigation du site sont câblés via des gestionnaires d' JavaScript événements (clic, défilement, menus dynamiques) au lieu d'<a href="...">éléments standard. Le robot effectue le rendu des interactions des utilisateurs JavaScript mais ne les simule pas. Il ne peut donc pas découvrir ces liens. Fournissez des URL de départ supplémentaires pour les pages que vous souhaitez explorer, ou fournissez une URL de plan de site répertoriant toutes les URL à explorer. Si le contenu peut être exporté sous forme de fichiers, pensez plutôt à utiliser le connecteur Amazon S3.
La synchronisation ne renvoie aucun contenu ou moins de pages que prévu. Le robots.txt fichier du site interdit les URL que vous souhaitez explorer, ou les pages comportent une noindex balise META. Effectuez robots.txt une mise à jour pour l'hôte afin qu'il autorise les chemins que vous souhaitez explorer, ou supprimez la balise noindex META des pages que vous souhaitez indexer. Ne bloquez pas la page robots.txt si vous souhaitez également détecter les balises méta, car le robot d'exploration doit accéder à la page pour lire les balises méta.
L'authentification échoue (HTTP 401 ou 403, boucle de redirection de connexion ou expiration de session). Les informations d'identification sont incorrectes ou ont expiré, ou les expressions XPath ne correspondent pas aux éléments de la page de connexion. Vérifiez les informations d'identification contenues dans votre secret. Pour FORM ou SAML authentifier, validez chaque XPath dans les outils de développement de votre navigateur, puis vérifiez. loginPageUrl
La synchronisation échoue en raison d'une limitation de débit (HTTP 429) ou d'un contenu incomplet. Le robot récupère les pages plus rapidement que ne le permet le site. maxCrawledUrlsPerMinuteRéduisez ou augmentez implicitWaitInSeconds pour les sites dont le contenu dynamique se charge une fois que la page est prête.
Des pages sont manquantes car elles sont plus grandes que prévu. La page ou la pièce jointe dépassemaxFileSizeInMegaBytes. Augmentez maxFileSizeInMegaBytes ou acceptez que les fichiers dont la taille dépasse la limite ne soient pas ingérés.