Pour beaucoup de travaux sur les données web, le crawl le moins cher est celui que quelqu’un d’autre a déjà effectué. Common Crawl publie une large tranche du web public chaque mois, gratuitement, et cela sous-tend de nombreux jeux de données textuels utilisés pour entraîner des modèles d’IA. Mais il a été conçu pour l’étendue, pas pour votre liste particulière de sources, et savoir où il s’arrête fait gagner des semaines aux équipes.
Ce guide couvre ce que Common Crawl contient, ce qu’il ne contient pas, comment vérifier s’il couvre les pages dont vous avez besoin, et quand il vaut la peine de réaliser votre propre crawl.
Ce que vous obtenez
Common Crawl est une organisation à but non lucratif américaine qui décrit son objectif comme la fourniture d’une copie d’internet aux chercheurs, entreprises et particuliers, sans frais. Les faits concernant son dernier crawl, CC-MAIN-2026-43, capturé entre le 5 et le 18 octobre 2026 :
| Pages | 2,16 milliards |
| Domaines enregistrés | 34,3 millions |
| Hôtes | 41,4 millions |
| URL jamais vues lors d’un crawl précédent | 830,1 millions |
| Contenu non compressé | 371,19 TiB |
| Fréquence | Environ un crawl par mois |
| Formats | WARC (réponses brutes), WAT (métadonnées), WET (texte brut) |
| Accès | Bucket AWS public dans us-east-1, téléchargements HTTPS, index d’URL |
Le mélange linguistique est large mais inégal : l’anglais représentait 42,6 % des pages HTML détectées lors de ce crawl, suivi du russe à 6,3 % et de l’allemand à 5,8 %.
Ce qu’il laisse de côté
Ces limites proviennent de la documentation même de Common Crawl, et elles déterminent la plupart des choix entre construire ou réutiliser.
- C’est un échantillon. Common Crawl indique qu’il n’archive généralement pas un site web entier mais « un sous-ensemble sélectionné de manière aléatoire ». Ne vous attendez pas à retrouver chaque page produit ou chaque article.
- Pas de JavaScript. Sa FAQ précise que le JavaScript n’est pas exécuté et que les cookies ne sont pas utilisés, donc le contenu qui n’apparaît qu’après l’exécution de scripts est absent.
- Pas de connexions ni de contenus payants. Il est précisé qu’il ne passe pas derrière des paywalls ni ne se connecte à des sites web.
- Il respecte les refus. CCBot vérifie d’abord robots.txt et respecte le crawl-delay. Lors du crawl d’octobre, 4,85 % des requêtes ont été refusées par robots.txt ou une erreur 403, et 18,47 % ont été ignorées. Notre analyse sur la part du web se trouvant derrière un mur anti-robots met ce chiffre en perspective.
- Un seul point de vue. Il effectue le crawl depuis un petit ensemble d’adresses publiées, donc vous obtenez une seule vue de chaque page. Les pages qui diffèrent selon le pays, la langue ou l’appareil n’apparaissent que dans une seule version.
- C’est un instantané. Une page apparaît telle qu’elle était à la date de capture, qui peut dater de plusieurs semaines.
Vérifier la couverture avant de décider
Le test le plus rapide consiste à demander à l’index si vos sources y figurent. Le script ci-dessous trouve le crawl le plus récent et interroge les captures pour un motif d’URL donné. Il envoie une requête à la fois depuis votre propre connexion, comme le demande Common Crawl ; pour des recherches en masse, utilisez plutôt l’index d’URL Parquet sur AWS. Il fonctionne avec Python 3.9 et versions ultérieures, avec requests.
from __future__ import annotations
import json
import requests
INDEX = "https://index.commoncrawl.org"
HEADERS = {"User-Agent": "coverage-check/1.0 (contact: data-team@example.com)"}
def latest_crawl():
"""The newest crawl ID, from Common Crawl's own list."""
return requests.get(f"{INDEX}/collinfo.json", headers=HEADERS, timeout=60).json()[0]["id"]
def captures(crawl, url_pattern, limit=1000):
"""Captures of matching URLs in one crawl. One request, no proxies: the index asks for that."""
r = requests.get(f"{INDEX}/{crawl}-index", headers=HEADERS, timeout=120,
params={"url": url_pattern, "output": "json", "limit": limit})
if r.status_code == 404: # no captures at all
return []
r.raise_for_status()
return [json.loads(line) for line in r.text.splitlines()]
if __name__ == "__main__":
crawl = latest_crawl()
rows = captures(crawl, "en.wikipedia.org/wiki/*")
statuses = {}
for row in rows:
statuses[row["status"]] = statuses.get(row["status"], 0) + 1
print(crawl, "captures returned:", len(rows), "by status:", dict(sorted(statuses.items())))
print("first:", rows[0]["url"], rows[0]["timestamp"]) if rows else print("none")
Résultat au 6 novembre 2026, pour un motif sur le Wikipedia anglais, plafonné à 1 000 résultats :
CC-MAIN-2026-43 captures returned: 1000 by status: {'200': 949, '301': 15, '404': 30, '429': 6}
first: https://en.wikipedia.org/wiki/!!! 20261017084408
Deux choses apparaissent immédiatement. La couverture d’un grand site est réelle mais partielle, donc comptez ce que vous obtenez pour vos propres motifs. Et les captures portent le statut reçu par Common Crawl : ici, 30 étaient des 404 et 6 des 429, donc une capture ne correspond pas toujours à du contenu. Filtrez par statut avant d’utiliser quoi que ce soit.
Quand le crawl gratuit suffit
- Entraînement et recherche sur du texte large. La modélisation du langage, les classificateurs et les statistiques à l’échelle du web ont besoin d’étendue plus que de n’importe quelle page en particulier. C’est ce que Common Crawl fait de mieux, et notre guide sur la construction de jeux de données d’entraînement à partir du web ouvert couvre le filtrage et la déduplication qui restent nécessaires.
- La découverte. Trouver quels domaines mentionnent un sujet, cartographier des liens ou estimer la taille d’un site est peu coûteux avec l’index d’URL.
- Les comparaisons historiques. Les instantanés mensuels remontant à des années sont difficiles à recréer soi-même.
Quand vous avez besoin de votre propre crawl
- Vous avez besoin de pages précises, intégralement. Un échantillon en manquera certaines, et vous ne saurez pas lesquelles.
- Vous en avez besoin à jour. Les prix, les stocks et les classements changent quotidiennement. Un instantané mensuel appartient déjà à l’histoire.
- Le contenu nécessite du JavaScript. De nombreuses pages modernes n’affichent leurs données que dans le navigateur.
- Vous avez besoin d’une vue locale. Les prix, les résultats de recherche et les publicités diffèrent selon le pays. Un crawl depuis un seul point de vue donne une seule réponse. Collecter chaque marché tel que ses visiteurs le voient, c’est à cela que servent les proxies résidentiels.
- Vous devez prouver la provenance. Un crawl que vous effectuez vous-même vous permet d’enregistrer exactement comment, quand et depuis où chaque page a été récupérée.
Beaucoup d’équipes combinent les deux : Common Crawl pour l’étendue et la découverte, leur propre crawler pour les sources qui comptent le plus.
Des conditions à lire attentivement
Common Crawl garde des conditions d’utilisation légères, mais elles comptent. Ses conditions d’utilisation précisent que le contenu crawlé peut être soumis aux conditions des sites dont il provient, que les utilisateurs acceptent de respecter le droit d’auteur et les autres droits, et elles recommandent de consulter un conseil juridique avant toute utilisation commerciale. L’utilisateur assume également la responsabilité des réclamations découlant de l’utilisation du contenu pour développer, entraîner ou déployer des systèmes d’IA. Depuis 2025, Common Crawl publie également un registre des demandes légales de retrait et supprime les URL concernées des crawls et outils ultérieurs. Réutiliser les données ne vous dispense pas de ces questions, donc conservez une trace de ce que vous avez utilisé.
En résumé
Common Crawl est le bon point de départ lorsque vous avez besoin d’étendue, d’historique ou d’un premier aperçu peu coûteux. Il cesse d’être suffisant lorsque vous avez besoin de pages précises, de données à jour, de contenu JavaScript ou d’une vue locale. Vérifiez d’abord votre couverture avec l’index, filtrez les captures par statut, lisez les conditions, et ne crawlez vous-même que là où l’échantillon gratuit est insuffisant.
Sources et références
- Common Crawl, FAQ : commoncrawl.org/faq
- Common Crawl, archive du crawl d’octobre 2026 : commoncrawl.org
- Common Crawl, Conditions d’utilisation (dernière mise à jour le 7 mars 2024) : commoncrawl.org/terms-of-use
- Common Crawl, Commencer : commoncrawl.org/get-started
- Common Crawl, index d’URL : commoncrawl.org/url-index
- Statistiques Common Crawl, taille du crawl, langues et métriques du crawler : commoncrawl.github.io
- Common Crawl, registre d’opt-out (17 septembre 2025) : commoncrawl.org
- Common Crawl, Rétablir les faits (4 novembre 2025) : commoncrawl.org