> ## Documentation Index
> Fetch the complete documentation index at: https://ai-kb.automationanywhere.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Utilisation des Web Crawlers

> Indexer les pages web pour une recherche IA intelligente

Avec les **Web Crawlers**, vous pouvez rassembler automatiquement des informations depuis un site web en utilisant l'URL du domaine. Toute page découvrable au sein du domaine sera automatiquement ajoutée à la Knowledge Base. Pour les sites web dont le contenu est fréquemment mis à jour, vous pouvez planifier des crawls périodiques pour ajouter les dernières informations et contenus provenant des pages nouvellement ajoutées à la Knowledge Base. De plus, vous pouvez spécifier certains mots-clés ou chemins dans le modèle de crawl pour extraire uniquement des sections spécifiques de votre site web.

## Modèles de crawl

Les **modèles** permettent des restrictions rapides et faciles sur les pages crawlées ou les processus basés sur des correspondances simples de chaînes d'URL. Par exemple, pour crawler uniquement les pages de la catégorie « sports » à l'adresse [http://www.example.com/sports/heres-a-sports-article.html](http://www.example.com/sports/heres-a-sports-article.html), vous pouvez spécifier un modèle de crawl de `/sports/` (l'inclusion des barres obliques garantit la précision et évite de correspondre à une chaîne « sports » ailleurs dans l'URL).

En utilisant un modèle de crawl, vous pouvez limiter le crawl à un sous-domaine particulier. Par exemple, lors d'un crawl commençant à un domaine spécifique, vous pouvez entrer un modèle de crawl pour empêcher le crawl de liens indésirables.
Dans une configuration de Web Crawl, vous pouvez entrer plusieurs modèles pour correspondre à plusieurs chaînes en plaçant chaque modèle individuel sur une nouvelle ligne.

Voici les modèles de crawl disponibles :

<AccordionGroup>
  <Accordion title="Limiter les correspondances au début des URL">
    Utilisez le caractère accent circonflexe (`^`) pour restreindre les correspondances de modèle au début d'une URL. Par exemple, un modèle de traitement de `^https://example.com` limitera le traitement uniquement aux pages dont les URL commencent par `https://example.com`.
  </Accordion>

  <Accordion title="Modèles de correspondance négative">
    Utilisez le point d'exclamation (`!`) pour une « correspondance négative » pour exclure explicitement les pages du crawl ou du traitement.
    <Warning>Avec plusieurs modèles, les correspondances négatives remplacent les autres modèles de crawl (sauf pour Regex, qui aurait priorité sur tout autre modèle).</Warning>
  </Accordion>

  <Accordion title="Expressions régulières pour crawl et traitement">
    Pour un contrôle précis de vos correspondances d'URL de crawl ou de traitement, vous pouvez créer une expression régulière (regex) pour crawler ou traiter exclusivement les URL qui correspondent à votre expression définie. Par exemple, pour traiter les pages à `https://example.com/` sous le chemin « `/crawl` » et contenant le terme « regex », vous pourriez utiliser un regex de traitement similaire à : `\\/crawl.*?regex`.
    Le crawlbot utilise un moteur d'expression régulière personnalisé pour des performances optimales lors de l'évaluation des pages. En termes de syntaxe de classe de caractères, couramment utilisée dans l'analyse du Crawlbot, le crawlbot prend en charge tous les caractères de traitement ASCII et la plupart des raccourcis Perl/Tcl.
    <Warning>Le regex de crawl et de traitement ne peut pas être utilisé simultanément avec d'autres modèles de crawl. Si les deux sont fournis, le regex remplace les autres modèles de crawl.</Warning>
  </Accordion>

  <Accordion title="Modèle de traitement HTML">
    Le crawl permet de limiter les pages traitées en fonction des modèles de traitement HTML, qui n'examinent que la source brute et n'exécutent pas JavaScript/AJAX pendant le temps de crawl. Cependant, l'inconvénient de cette option est la vitesse de crawl.
    Si vous souhaitez une vitesse de crawl plus rapide, vous devriez utiliser le regex de crawl et de traitement.
  </Accordion>
</AccordionGroup>

## Quand utiliser un Crawler

Le crawler est conçu pour extraire des informations structurées et de haute valeur du web. Il fonctionne mieux dans les scénarios où les données sont accessibles au public et régulièrement mises à jour.

### Meilleurs cas d'usage

* **Actualités et médias** – Extrayez des articles de sites comme BBC News
* **Données financières** – Collectez des perspectives de marché à partir de sites boursiers comme NASDAQ
* **E-commerce** – Rassemblez les listes de produits, les avis et les prix des marchés électroniques
* **Ressources de connaissance** – Capturez les articles de blog, les discussions de forum ou le contenu FAQ pour enrichir votre Knowledge Base.

### Quand ne pas utiliser le Crawler

Évitez le crawl dans ces situations pour prévenir les erreurs ou les problèmes de conformité :

* **Authentification requise** – Les sites web qui nécessitent des identifiants de connexion (par exemple, LinkedIn).
* **Tableaux de bord très dynamiques** – Les tableaux de bord en temps réel (comme les cotations boursières en direct) peuvent ne pas donner des résultats complets.
* **Charge excessive du site** – Respectez les politiques d'utilisation de chaque site – consultez toujours le fichier `robot.txt` avant le crawl.

## Créer un nouveau Crawler

1. Dans votre projet EKB, accédez à la **Knowledge Base**.
2. Dans la Knowledge Base, cliquez sur l'icône **d'engrenage** en haut à droite.
3. Allez à l'onglet **Crawlers**.
4. Cliquez sur **+ Créer nouveau**.
5. Dans la section **Entrée** :<br /><img src="https://mintcdn.com/automationanywhere/-dnDAw8Ty1Kp1N7X/img/knowledge-base/crawler-input.png?fit=max&auto=format&n=-dnDAw8Ty1Kp1N7X&q=85&s=e167d3d78796e4e0ca1a3976b6f100f3" alt="Crawler Input" width="1081" height="313" data-path="img/knowledge-base/crawler-input.png" />
   **a**. Entrez un **nom** pour votre crawler.<br />
   **b**. Fournissez l'**URL de départ**, le lien du site web que vous souhaitez crawler. C'est le lien initial qui est accédé par le crawler. À partir de là, le crawler explore les pages web et les liens disponibles au sein du site web.
6. Dans la section **Paramètres du Crawler** :<br /><img src="https://mintcdn.com/automationanywhere/-dnDAw8Ty1Kp1N7X/img/knowledge-base/crawler-settings.png?fit=max&auto=format&n=-dnDAw8Ty1Kp1N7X&q=85&s=acfb255d717bc1dda72c9da1e413d45d" alt="Crawler Settings" width="1094" height="900" data-path="img/knowledge-base/crawler-settings.png" />
   * **Limiter au domaine racine** – Ceci configure le crawler pour se concentrer uniquement sur le domaine racine, rationalisant l'extraction d'informations pertinentes.
   * **Télécharger les fichiers** – Activez cette option si vous souhaitez que le crawler télécharge et traite les fichiers trouvés lors du crawl.
   * **Max Pages à crawler** – Définissez le nombre maximum de pages à crawler pour optimiser l'utilisation des ressources et l'efficacité.
   * **Profondeur maximale** – Définissez la profondeur maximale à crawler à partir de l'URL de départ (c'est-à-dire combien de liens en profondeur à suivre).
   * **Stratégie de crawl** – Choisissez comment le crawler priorise les pages à visiter en premier.
     * **Meilleur d'abord** – Si vous sélectionnez cette option, vous devez configurer les mots-clés que le crawler doit utiliser pour trouver ces pages et le poids de ces mots-clés.
       * **Mots-clés pour le meilleur d'abord** – Les pages contenant les mots-clés configurés dans cette zone de texte seront crawlées en premier. Entrez un mot-clé par ligne.
       * **Poids des mots-clés** – Configurez le poids des mots-clés pour la correspondance des mots-clés ; plus la valeur est élevée, plus elle priorise la correspondance des mots-clés.
     * **Largeur d'abord** – Cette méthode priorise la visite de toutes les pages directement liées à partir d'une page actuelle avant d'aller plus loin.
     * **Profondeur d'abord** – Cette méthode priorise l'exploration aussi profondément que possible le long d'un chemin unique de liens avant de revenir en arrière et d'explorer d'autres chemins.
   * **Limiter aux domaines** – Limitez le crawler à des domaines spécifiques au lieu de crawler tous les sous-domaines au sein du domaine racine. Entrez un domaine par ligne ou laissez vide pour crawler tous les sous-domaines.
   * **Limiter aux modèles** – Entrez les modèles de crawl que vous souhaitez que le crawler utilise. Entrez un modèle de crawl par ligne.<br /><Warning>Si vous utilisez plusieurs modèles de crawl, voici la hiérarchie :<br />1. Regex<br />2. Correspondances négatives<br />3. Tous les autres modèles.</Warning>
7. Dans la section **Planification**, définissez la fréquence et l'heure des crawls planifiés :<br /><img src="https://mintcdn.com/automationanywhere/-dnDAw8Ty1Kp1N7X/img/knowledge-base/crawler-scheduling.png?fit=max&auto=format&n=-dnDAw8Ty1Kp1N7X&q=85&s=777db3f60a3788d45e19144c6634e080" alt="Crawler Scheduling" width="1063" height="330" data-path="img/knowledge-base/crawler-scheduling.png" />
   * **Crawl activé** – Activez cette option pour définir le calendrier de crawl.
   * **Répéter tous les n jours** – Définissez le nombre de jours selon lequel vous souhaitez que le crawl s'exécute. Par exemple :<br />
     * **Quotidien** = `1`
     * **Hebdomadaire** = `7`
     * **Bi-hebdomadaire** = `14`
     * **Mensuel** = `30`
   * **Prochain planification** – En fonction du nombre de jours que vous entrez, vous verrez la date du prochain crawl.
8. Une fois que vous avez terminé la configuration de votre crawl web, cliquez sur **Crawl maintenant** pour démarrer le premier crawl. Vous serez redirigé vers la page de configuration du nouveau crawler avec les onglets suivants :<br /><img src="https://mintcdn.com/automationanywhere/-dnDAw8Ty1Kp1N7X/img/knowledge-base/crawler-overview.png?fit=max&auto=format&n=-dnDAw8Ty1Kp1N7X&q=85&s=506fdc74fff101527f421f3fe4985d9f" alt="Crawler Overview" width="1919" height="945" data-path="img/knowledge-base/crawler-overview.png" />
   * **Vue d'ensemble** – C'est ici que vous pouvez voir les informations et le statut de la demande de crawl.
   * **Paramètres** – C'est ici que vous pouvez modifier les paramètres du crawler. Vous pouvez modifier ces paramètres même après qu'un crawl s'est exécuté.
   * **Rapport crawlé** – Cet onglet fournit des mises à jour en temps réel sur les pages en cours de crawl.

<Check>Votre crawler est maintenant configuré et exécute son premier crawl !</Check>

## Meilleures pratiques

<Check>Le respect de ces meilleures pratiques garantit que votre crawler s'exécute efficacement, évite les doublons inutiles et apporte uniquement les données les plus pertinentes à votre Knowledge Base.</Check>

### 1. Utiliser des URL de départ claires et concises

Choisissez des URL qui pointent directement vers la section d'un site web que vous souhaitez extraire.

* **Bon exemple** : `https://www.example.com/news` (cible uniquement la section « actualités »)
* **Mauvais exemple** : `https://www.example.com?user=1234` (L'utilisation de paramètres dynamiques peut causer des erreurs ou des crawls redondants)

Assurez-vous toujours que :

* l'URL est accessible et pertinente pour les données que vous souhaitez extraire.
* utilisez des sous-pages lorsque vous souhaitez restreindre le crawl à une section spécifique.

### 2. Restreindre aux domaines et sous-domaines

Maintenez votre crawl ciblé pour éviter de récupérer des données inutiles ou non pertinentes.

* **Limiter au domaine racine** – Crawler `example.com` capture uniquement ce domaine et ignore les liens externes (par exemple, otherwebsite.com).
* **Limiter au domaine** – Crawler `blog.example.com` n'inclura pas d'autres sous-domaines comme `shop.example.com`.

#### Exemple

Crawler `https://www.bbc.com`, avec **Limiter au domaine racine** activé garantit que seul le contenu BBC est inclus – pas les sources d'actualités externes liées sur le site.

### 3. Utiliser les modèles de crawl et de traitement

Les modèles vous permettent de peaufiner ce que le crawler récupère et traite.

* **Modèles de crawl** – Définissez les URL qui doivent être crawlées.
* **Modèles de traitement** – Spécifiez le contenu qui doit être extrait dans votre Knowledge Base.
  Les deux utilisent une syntaxe regex simplifiée :
* **Wildcard implicite** – Entrer `products` correspond à toute URL contenant « products ».
* **Négation(`!`)** – `!products` correspond à toute URL *sans* « products ».
* **Commence par (`^`)** – `^https://example.com/products/` correspond aux URL commençant par ce chemin.
* **Se termine par(`$`)** – `products/$` correspond aux URL se terminant par « products ».

#### Exemple

* **Modèle de crawl** – `https://example.com/products/*` > crawle toutes les pages de produits.
* **Modèle de traitement** – `https://example.com/products/*reviews` > extrait uniquement les avis des pages de produits.

### 4. Activer les crawls planifiés (si nécessaire)

Pour les sites web dynamiques, planifiez les crawls pour maintenir votre Knowledge Base à jour.

#### Exemple

Suivez les prix des actions sur `https://www.nasdaq.com` en activant les crawls quotidiens.

### 5. Utiliser les sitemaps pour l'efficacité

Si un site propose un sitemap (par exemple, `https://example.com/sitemap.xml`), utilisez-le pour guider le crawler et assurer une couverture complète.

#### Exemple

Un site d'actualités avec un sitemap listant tous les articles récents garantit qu'aucun article n'est manqué.
