Connecteur URL Crawler
Configuration
| Champ | Description | Exemple / Remarque |
|---|---|---|
URLs | L’URL du site à indexer ou une liste de thématiques à récupérer | https://wikit.ai ou https://wikit.ai/blog pour indexer uniquement les articles du blog |
Utiliser le plan du site | Permet de récupérer automatiquement la sitemap du site | Sitemaps reconnus : sitemap.xml, sitemap_index.xml, sitemap |
Plan du site personnalisé | À utiliser si l’URL de la sitemap ne correspond pas aux formats reconnus | Saisir manuellement l’URL de la sitemap |
Chemin à exclure | Permet d’exclure un ou plusieurs chemins spécifiques du site | Exemple : /private, /admin |
Exclure les URLs de fichiers | Exclut automatiquement les URLs pointant vers des fichiers (PDF, images, etc.) | Utile pour éviter d’indexer des documents |
Comprendre les paramètres
Conditions pour qu’une URL soit crawlée
Une URL est crawlée SEULEMENT SI toutes les conditions suivantes sont vraies :
✅ Même origine ET même sous-chemin
✅ Pas d'ancre (#section)
✅ Pas dans les chemins exclus
✅ Pas déjà visitée
✅ Pas une URL de réseau social
✅ Pas un fichier (si excludeFileUrls = true)
✅ Ne se termine pas par '#'
✅ Paramètres autorisés ou pas de paramètresExemples détaillés
Base d’exemple
- baseUrl :
https://example.com/docs - pathsToExclude :
["/admin", "/private"] - excludeFileUrls :
true - includeUrlWithParam :
false - visitedUrl :
Set(["https://example.com/docs/intro"])
✅ URLs qui SERONT crawlées
| URL | Raison |
|---|---|
https://example.com/docs/guide | ✅ Toutes conditions remplies |
https://example.com/docs/api/v1 | ✅ Même origine, sous-chemin valide |
https://example.com/docs/tutorial.html | ✅ Fichier HTML autorisé même si excludeFileUrls=true |
https://example.com/docs | ✅ Chemin racine valide |
❌ URLs qui NE SERONT PAS crawlées
1. Origine différente
| URL | Problème |
|---|---|
https://other-site.com/docs | ❌ Origine différente |
http://example.com/docs | ❌ Protocole différent |
https://subdomain.example.com/docs | ❌ Sous-domaine différent |
2. Chemin invalide
| URL | Problème |
|---|---|
https://example.com/blog | ❌ Ne commence pas par /docs |
https://example.com/ | ❌ Pas le même sous-chemin |
3. Présence d’ancre
| URL | Problème |
|---|---|
https://example.com/docs/guide#section1 | ❌ Contient une ancre |
https://example.com/docs#top | ❌ Ancre présente |
4. Chemins exclus
| URL | Problème |
|---|---|
https://example.com/admin/users | ❌ Commence par /admin |
https://example.com/private/data | ❌ Commence par /private |
https://example.com/docs/admin | ❌ Sous-chemin exclu |
5. URLs déjà visitées
| URL | Problème |
|---|---|
https://example.com/docs/intro | ❌ Déjà dans visitedUrl |
6. Réseaux sociaux
| URL | Problème |
|---|---|
https://twitter.com/example | ❌ URL de réseau social |
https://facebook.com/page | ❌ URL de réseau social |
7. Fichiers (si excludeFileUrls = true)
| URL | Problème |
|---|---|
https://example.com/docs/file.pdf | ❌ Fichier PDF |
https://example.com/docs/image.jpg | ❌ Fichier image |
https://example.com/docs/doc.docx | ❌ Document Word |
Exception : Les fichiers .html et .htm sont autorisés même si excludeFileUrls = true
8. URLs se terminant par ‘#’
| URL | Problème |
|---|---|
https://example.com/docs/guide# | ❌ Se termine par ‘#’ |
9. Paramètres non autorisés
Si includeUrlWithParam = false :
| URL | Problème |
|---|---|
https://example.com/docs?search=test | ❌ Contient des paramètres |
https://example.com/docs/guide?page=1 | ❌ Paramètres non autorisés |
Si includeUrlWithParam = true :
| URL | Statut |
|---|---|
https://example.com/docs?search=test | ✅ Paramètres autorisés |
Arbre de décision
URL à tester
│
├─ Même origine ? ─── NON ──► ❌ Rejetée
│ │
│ OUI
│ │
├─ Même sous-chemin ? ─── NON ──► ❌ Rejetée
│ │
│ OUI
│ │
├─ Contient une ancre ? ─── OUI ──► ❌ Rejetée
│ │
│ NON
│ │
├─ Chemin exclu ? ─── OUI ──► ❌ Rejetée
│ │
│ NON
│ │
├─ Déjà visitée ? ─── OUI ──► ❌ Rejetée
│ │
│ NON
│ │
├─ URL réseau social ? ─── OUI ──► ❌ Rejetée
│ │
│ NON
│ │
├─ Fichier + excludeFileUrls ? ─── OUI ──► ❌ Rejetée
│ │
│ NON
│ │
├─ Se termine par '#' ? ─── OUI ──► ❌ Rejetée
│ │
│ NON
│ │
└─ Paramètres autorisés ? ─── NON ──► ❌ Rejetée
│
OUI
│
✅ URL crawléeCas particuliers
Fichiers HTML
file.htmletfile.htmsont toujours autorisés même siexcludeFileUrls = true- Autres extensions (
.pdf,.jpg, etc.) sont bloquées siexcludeFileUrls = true
Paramètres URL
- Si
includeUrlWithParam = false: toute URL avec?param=valueest rejetée - Si
includeUrlWithParam = true: les paramètres sont autorisés
Chemins exclus
Les chemins exclus sont convertis en chemins absolus basés sur la première baseUrl :
"/admin"devient le pathname complet pour comparaison- La vérification utilise
startsWith()donc/admin/usersest exclu si/adminest dans la liste