Base de connaissances

robots.txt, opt-outs IA et signaux de réservation : ce que les collecteurs de données web doivent respecter en 2026

robots.txt a désormais un poids juridique dans l'UE, et de nouveaux signaux IA se répandent. Ce que chacun signifie, ce que les robots d'exploration IA respectent et comment les équipes data doivent réagir.

James Meadow

James Meadow

26 septembre 2026 · 16 min de lecture

Pendant la majeure partie de ses trente années d’existence, robots.txt a été une courtoisie : un simple fichier texte demandant aux crawlers de ne pas emprunter certains chemins, sans rien derrière lui d’autre que de bonnes manières. Cela a changé. Il est devenu une norme internet formelle en 2022. Dans l’UE, les mécanismes d’opt-out lisibles par machine déterminent désormais si la fouille de textes et de données est licite, et les fournisseurs de modèles d’IA ont une obligation légale de les repérer et de les respecter. Entre-temps, une série de nouveaux signaux est apparue, chacun prétendant indiquer ce qu’un site autorise les systèmes d’IA à faire avec son contenu.

Pour quiconque collecte des données web publiques, et en particulier pour quiconque voit ses données finir par entraîner ou alimenter des modèles d’IA, la question pratique est simple : lesquels de ces signaux devez-vous lire, que signifient-ils, et que devez-vous en faire ? Ce guide expose l’état actuel des choses, en date de septembre 2026.

Points clés

  • robots.txt est une norme IETF, la RFC 9309. Elle définit des règles de correspondance précises, mais elle affirme clairement que ses règles « ne constituent pas une forme d’autorisation d’accès ».
  • Dans l’UE, l’exception de fouille de textes et de données à des fins commerciales ne s’applique que lorsque les titulaires de droits n’ont pas réservé leurs droits « de manière appropriée, telle que des moyens lisibles par machine » pour le contenu en ligne. Des tribunaux allemands ont jugé qu’une telle réserve n’est effective que sous forme lisible par machine.
  • Les fournisseurs de modèles d’IA à usage général sont tenus depuis le 2 août 2025 d’identifier et de respecter ces réserves. Le pouvoir de la Commission de leur infliger des amendes s’applique à partir du 2 août 2026.
  • De nouveaux signaux de préférence existent, des Content Signals de Cloudflare au vocabulaire de préférences pour l’IA en projet à l’IETF, mais aucun n’est encore une norme achevée. Enregistrez-les même lorsqu’ils ne sont pas contraignants.
  • L’utilisation d’un réseau de proxies ne change pas ce qu’un site a demandé. Les obligations s’attachent à ce que vous collectez et à la manière dont vous l’utilisez, pas à l’adresse IP depuis laquelle vous le collectez.

robots.txt est désormais une norme

La RFC 9309, publiée en septembre 2022, a transformé une convention de fait en une norme proposée (Proposed Standard). Plusieurs de ses règles surprennent les personnes qui n’ont jamais lu de fichiers robots.txt qu’à l’œil nu :

  • La règle la plus spécifique l’emporte. « La correspondance la plus spécifique trouvée DOIT être utilisée », mesurée par la longueur de la règle correspondante, avec allow privilégié lorsqu’une règle allow et une règle disallow sont équivalentes. L’ordre dans le fichier n’a pas d’importance.
  • La correspondance des agents ne tient pas compte de la casse, et un crawler sans groupe correspondant se rabat sur le groupe *.
  • Les erreurs ont des significations différentes. Si robots.txt est indisponible, avec une réponse 4xx, un crawler peut accéder à tout. S’il est inaccessible en raison d’erreurs de serveur ou de réseau, le crawler « DOIT supposer une interdiction complète ».
  • La mise en cache est limitée. Les crawlers « NE DEVRAIENT PAS utiliser la version en cache pendant plus de 24 heures, sauf si le fichier robots.txt est inaccessible ».

Et la limite qui compte le plus : « Ces règles ne constituent pas une forme d’autorisation d’accès. » robots.txt ne rend pas un contenu privé, et l’ignorer n’équivaut pas à s’introduire dans un système. Ce qui lui donne du poids dans certains contextes, c’est le droit, pas le protocole lui-même.

Pourquoi cela compte juridiquement dans l’UE

Les règles de droit d’auteur de l’UE autorisent la fouille de textes et de données de contenu licitement accessible, avec deux exceptions distinctes. L’une couvre les organismes de recherche et les institutions du patrimoine culturel effectuant de la recherche scientifique, et ne comporte aucun opt-out. L’autre couvre tous les autres, y compris la fouille commerciale, mais ne s’applique que lorsque l’utilisation « n’a pas été expressément réservée par leurs titulaires de droits de manière appropriée, telle que des moyens lisibles par machine dans le cas d’un contenu mis à la disposition du public en ligne ».

L’AI Act applique ensuite cette règle à l’IA. Les fournisseurs de modèles d’IA à usage général doivent « mettre en place une politique visant à respecter le droit de l’Union en matière de droit d’auteur et de droits voisins et, en particulier, à identifier et à respecter, y compris au moyen de technologies de pointe, une réservation de droits » effectuée en vertu des règles de droit d’auteur. Ces obligations s’appliquent depuis le 2 août 2025. Les pouvoirs de sanction de la Commission à l’égard des fournisseurs d’IA à usage général, pouvant aller jusqu’à 3 % du chiffre d’affaires mondial, s’appliquent à partir du 2 août 2026, et les modèles mis sur le marché avant août 2025 ont jusqu’au 2 août 2027 pour se conformer.

Le Code de bonnes pratiques volontaire pour l’IA à usage général, publié en juillet 2025, rend cela concret. Les signataires s’engagent « à employer des crawlers web qui lisent et suivent les instructions exprimées conformément au Protocole d’exclusion des robots (robots.txt), tel que spécifié dans » la RFC 9309, et à identifier et respecter d’autres protocoles appropriés lisibles par machine. Deux réserves du Code méritent d’être notées. L’adhésion « ne constitue pas une conformité au droit de l’Union en matière de droit d’auteur et de droits voisins ». Et l’engagement n’affecte pas la manière dont le droit d’auteur s’applique au contenu « collecté ou crawlé sur internet par des tiers » et utilisé par les signataires. Acheter un jeu de données ne purge pas les réserves qui s’appliquaient à ses sources.

Ce qu’ont dit les tribunaux

La jurisprudence est encore en formation, et deux décisions illustrent la direction prise.

En Allemagne, un photographe a poursuivi l’organisation à but non lucratif LAION pour l’utilisation de son image dans un jeu de données d’entraînement d’IA. Les tribunaux de Hambourg ont rejeté la demande. En appel, l’Oberlandesgericht a jugé, selon les termes du résumé de la Bundesgerichtshof, qu’une réserve pour des œuvres en ligne n’est effective que « in maschinenlesbarer Form », sous forme lisible par machine, et que le demandeur n’avait pas démontré que sa réserve, rédigée en langage naturel dans les conditions d’utilisation, était lisible par machine au moment pertinent. La Bundesgerichtshof a entendu le pourvoi le 3 septembre 2026 et a fixé sa décision au 17 décembre 2026.

Aux Pays-Bas, un tribunal d’Amsterdam a statué le 30 octobre 2024 dans un litige opposant des éditeurs de journaux à un agrégateur d’actualités. L’agrégateur a fait valoir, sans que les éditeurs ne le contestent, que leur robots.txt n’excluait que certains bots d’IA, tels que GPTBot, ChatGPT-User et CCBot. Cela n’était pas suffisant pour établir que les droits avaient été réservés de manière appropriée et lisible par machine pour l’usage fait par l’agrégateur, de sorte que l’exception s’appliquait.

Les deux décisions vont dans le même sens : ce qui compte, ce sont les signaux lisibles par machine, et un signal visant des bots spécifiques peut ne pas réserver les droits contre tous les autres. Aucune des deux n’est une orientation définitive, et les deux dépendent des faits. Adressez vos questions spécifiques à un conseil juridique.

Les signaux que vous rencontrerez

SignalOù il se trouveStatutCe qu’il exprime
Allow et Disallow de robots.txt/robots.txtNorme IETF, RFC 9309Si un crawler nommé peut accéder à un chemin
Content SignalsLignes dans robots.txt, telles que Content-Signal: search=yes, ai-train=noPolitique Cloudflare, publiée en septembre 2025Préférences pour la recherche, l’entrée d’IA et l’entraînement d’IA
Préférences IA (Content-Usage)Lignes robots.txt ou en-tête HTTP, telles que Content-Usage: train-ai=nBrouillons du groupe de travail IETF, pas encore des normesPréférences pour l’entraînement de l’IA, l’usage de l’IA et la recherche
TDMRep/.well-known/tdmrep.json, un en-tête HTTP tdm-reservation ou une balise meta HTMLRapport du groupe communautaire W3C, pas une norme W3CSi les droits de fouille de textes et de données sont réservés
Conditions d’utilisationLes pages juridiques du siteContrat et, dans l’UE, possiblement une réserve si lisible par machineCe que disent les conditions du site

Deux détails comptent. Les Content Signals de Cloudflare définissent search, ai-input (pour la récupération, l’ancrage et les réponses générées) et ai-train, et la politique précise que « les content signals expriment des préférences ; ce ne sont pas des contre-mesures techniques contre le scraping ». Elle déclare également que les restrictions exprimées par les signaux constituent des réserves expresses de droits en vertu des règles de droit d’auteur de l’UE. Les brouillons de l’IETF, quant à eux, sont véritablement inachevés : le brouillon de vocabulaire actuel comporte une note indiquant que son contenu « NE REFLÈTE PAS LE CONSENSUS du groupe de travail ». Attendez-vous à ce que les libellés changent.

Comment les principaux crawlers d’IA les traitent

Les opérateurs publient leurs propres règles, et elles diffèrent, en particulier pour les requêtes effectuées pour le compte d’un utilisateur.

OpérateurAgentCe que le blocage fait, selon l’opérateur
OpenAIGPTBotIndique que le contenu « ne devrait pas être utilisé pour entraîner des modèles fondamentaux d’IA générative »
OpenAIOAI-SearchBotLe site n’apparaît pas dans les réponses de recherche de ChatGPT, bien qu’il puisse encore apparaître sous forme de liens de navigation
OpenAIChatGPT-UserInitié par l’utilisateur ; « les règles robots.txt peuvent ne pas s’appliquer »
GoogleGoogle-ExtendedUn jeton robots.txt sans user agent distinct ; contrôle l’utilisation pour l’entraînement et l’ancrage des modèles Gemini, et « n’affecte pas l’inclusion d’un site dans Google Search »
GoogleFetchers déclenchés par l’utilisateur« ignorent généralement les règles robots.txt »
AnthropicClaudeBot, Claude-User, Claude-SearchBotBloquer ClaudeBot exclut le contenu futur de l’entraînement ; bloquer Claude-User empêche la récupération pour les requêtes utilisateur ; les bots respectent robots.txt et crawl-delay

Pour une équipe data, la leçon est que « bloquer l’IA » n’est pas un interrupteur unique. Un site peut autoriser l’indexation pour la recherche tout en refusant l’entraînement, ou refuser l’entraînement tout en étant tout de même récupéré en direct lorsqu’un utilisateur pose une question à son sujet. Lisez les signaux pour l’usage que vous faites réellement.

Combien de sites optent pour l’exclusion

Les opt-out ont augmenté rapidement. L’étude « Consent in Crisis » de la Data Provenance Initiative, un audit de 14 000 domaines web publié en juillet 2024, a constaté qu’en une seule année, les restrictions de robots.txt rendaient « environ 5 %+ de tous les jetons de C4, ou 28 %+ des sources les plus activement maintenues et critiques de C4, entièrement restreints », et que « pour les restrictions de crawling des conditions d’utilisation, pas moins de 45 % de C4 est désormais restreint ». La couverture est cependant inégale au sommet du web : Cloudflare a rapporté en juillet 2025 que « seuls environ 37 % des 10 000 premiers domaines disposent actuellement d’un fichier robots.txt », et que GPTBot était interdit dans 7,8 % de ces fichiers.

Ce qu’un collecteur responsable devrait faire

Que vous entraîniez des modèles ou non, une politique claire vous protège ainsi que les sites dont vous dépendez.

  1. Récupérez et respectez correctement robots.txt. Mettez-le en cache pendant 24 heures au maximum, traitez les erreurs serveur comme un « tout interdire », et faites correspondre les règles à la manière de la RFC 9309.
  2. Connaissez votre finalité. L’indexation, la récupération pour des réponses en direct et l’entraînement de modèles sont des usages différents, et les signaux les plus récents les traitent différemment. Déterminez lequel votre collecte sert, et lisez les signaux pour cet usage.
  3. Enregistrez les signaux avec les données. Stockez les règles robots.txt, les content signals et les en-têtes TDMRep qui s’appliquaient au moment de la collecte, avec chaque enregistrement. Si un jeu de données est ensuite utilisé pour de l’IA, cet enregistrement est ce qui vous permet de démontrer que les réserves ont été identifiées. Il doit figurer dans le même enregistrement de provenance que le point de vue et l’horodatage de capture.
  4. Évaluez les conditions d’utilisation avec un conseil juridique. Elles peuvent compter contractuellement partout, et dans l’UE elles peuvent constituer une réserve si elles sont exprimées de manière lisible par machine.
  5. Rythmez votre collecte. Respecter les limites de crawl et ralentir en cas de charge fait partie de la même bonne foi, comme abordé dans rate limiting et request throttling.

Une mise en garde concernant les outils : le module intégré de Python urllib.robotparser applique les règles dans l’ordre du fichier plutôt que par correspondance la plus spécifique. Avec Disallow: /shop suivi de Allow: /shop/public, il déclare /shop/public/item comme interdit ; inversez les deux lignes et il dit autorisé. La RFC 9309 dit autorisé dans les deux cas. Un petit vérificateur qui suit la RFC, et enregistre les lignes de préférence IA qu’il trouve, ressemble à ceci :

import re
import urllib.error
import urllib.request


def _groups(text):
    """Parse robots.txt into (agents, rules, extras) groups, following RFC 9309 grouping."""
    groups, agents, rules, extras, last = [], [], [], [], None
    for raw in text.splitlines():
        line = raw.split("#", 1)[0].strip()
        if ":" not in line:
            continue
        key, value = (p.strip() for p in line.split(":", 1))
        key = key.lower()
        if key == "user-agent":
            if last != "user-agent" and agents:
                groups.append((agents, rules, extras))
                agents, rules, extras = [], [], []
            agents.append(value.lower())
        elif key in ("allow", "disallow") and agents:
            rules.append((key, value))
        elif key in ("content-signal", "content-usage") and agents:
            extras.append((key, value))
        last = key
    if agents:
        groups.append((agents, rules, extras))
    return groups


def _pattern(path):
    regex = re.escape(path).replace(r"\*", ".*")
    return re.compile(regex[:-2] + "$" if regex.endswith(r"\$") else regex)


def check(robots_txt, user_agent, path):
    """Allow/disallow per RFC 9309 (most specific match wins, allow on ties), plus AI signals."""
    token = user_agent.lower()
    groups = _groups(robots_txt)
    matched = [g for g in groups if token in g[0]] or [g for g in groups if "*" in g[0]]
    rules = [r for g in matched for r in g[1]]
    extras = [e for g in matched for e in g[2]]
    best = None
    for kind, value in rules:
        if value and _pattern(value).match(path):
            length = len(value)
            if best is None or length > best[1] or (length == best[1] and kind == "allow"):
                best = (kind, length)
    return {"allowed": best is None or best[0] == "allow", "signals": extras}


def fetch_robots(origin, opener=None):
    """Fetch robots.txt. Per RFC 9309: 4xx means no rules; 5xx or network failure means disallow all."""
    opener = opener or urllib.request.build_opener()
    try:
        with opener.open(origin.rstrip("/") + "/robots.txt", timeout=30) as r:
            return r.read(512 * 1024).decode("utf-8", "replace")
    except urllib.error.HTTPError as e:
        return "" if 400 <= e.code < 500 else "User-agent: *\nDisallow: /"
    except OSError:
        return "User-agent: *\nDisallow: /"

Il est délibérément réduit. Les crawlers de production devraient également vérifier les en-têtes TDMRep et le fichier /.well-known/tdmrep.json lorsque l’entraînement entre dans le périmètre, et conserver une copie datée de chaque robots.txt sur laquelle ils se sont appuyés.

La place des proxies

Les proxies résidentiels changent l’origine apparente d’une requête. Ils ne changent pas ce qu’un site vous a demandé, et ils ne changent pas vos obligations au titre du droit d’auteur ou des conditions d’un site. Les règles de l’UE s’attachent à l’usage du contenu, et le Code de bonnes pratiques maintient explicitement la collecte par des tiers dans son périmètre. Utilisez un réseau de proxies pour voir le web comme le voient les utilisateurs réels d’un marché donné, pour répartir la charge de manière courtoise et pour mesurer honnêtement, et appliquez les mêmes vérifications de robots.txt et de réserves que vous appliqueriez depuis vos propres serveurs. L’argument plus large est développé dans ethical residential proxies for AI data collection.

En résumé

robots.txt a mûri. C’est une norme aux règles précises, et dans l’UE, les réserves lisibles par machine construites sur elle et à ses côtés déterminent désormais si la fouille de textes et de données est autorisée, avec des fournisseurs d’IA soumis à une obligation légale directe de les respecter et des amendes possibles à partir d’août 2026. De nouveaux signaux pour la recherche, l’entrée d’IA et l’entraînement se répandent rapidement, même si les normes qui les sous-tendent sont inachevées.

Pour une équipe data, la politique praticable reste la même quelle que soit la manière dont les détails se stabiliseront : analysez correctement robots.txt, sachez quel usage sert votre collecte, enregistrez tout signal qui s’appliquait au moment de la collecte, et traitez les préférences auxquelles vous n’êtes pas strictement tenus comme une information à conserver plutôt qu’un bruit à écarter. Les équipes qui font cela dès maintenant n’auront pas à le reconstituer plus tard.

Sources et références

Cet article est une information générale, pas un conseil juridique. Consultez un conseil juridique au sujet de vos obligations dans chaque juridiction.

Prêt à commencer ?

Essayez les proxies résidentiels de Shifter, 205M+ IPs, 195+ pays, à partir de 0,75 $/GB.

Commencer