Archivage des sites SPIP par la BnF

Bonjour,

Je travaille au service du dépôt légal numérique de la Bibliothèque nationale de France.
Dans le cadre du dépôt légal du web instauré par la loi DADVSI de 2006, la mission de notre service est la collecte du web français et la constitution d’archives qui remontent à 1996. Leur consultation est strictement encadrée et réservée aux chercheurs.

A ce titre, nous archivons de nombreux sites utilisant le CMS SPIP, afin d’en conserver la mémoire. Malheureusement, nous avons constaté à plusieurs reprises un blocage de sécurité de nos robots de collecte. Ce blocage est en lien avec la présence du mot « bot » dans le user agent de notre robot et intervient au niveau de l’écran de sécurité.

Le script de sécurité définit une liste de bots « amis ». Y aurait-il une possibilité d’y ajouter notre robot BnF afin que nous puissions mener à bien notre mission d’archivage ?

Nous restons à votre disposition pour toute question.

L’équipe du dépôt légal du web de la BnF

Bonjour,
pour les devs
problème déjà discuté ici

Sur ce, je vous laisse entre spécialistes :wink:
Clt

Hello, j’ai déplacé le sujet dans le forum de Dev, car il s’agit d’une demande sur le développement de SPIP. Peut-être que ce serait même mieux de créer carrément un ticket sur la forge, dans le dépôt qui a l’écran de sécurité ? Ici donc : Tickets · spip-contrib-outils / securite · GitLab

1 « J'aime »

Si j’en crois le message des discussions passées, il y avait aussi des raisons de bloquer les bots de la Bnf « trop agressifs ». Peut être que @marcimat pourrait en dire plus, pour que du coté de la BNF des règlages soient fait, ce qui permettrait de débloquer du côté spipien ?

Si je ne m’abuse, les bots ne sont bloqués que lorsque le site est surchargé, et c’est une mesure légitime à l’égard de tous les bots.

Le bot de la BNF sait il vraiment réguler son appétit ?

Merci pour vos retours.
Pour info, notre robot applique un délai de politesse entre chaque requête, d’au minimum deux secondes, et proportionnel au temps de réponse des serveur afin de minimiser la charge. Les derniers blocages que nous avons constatés semblent en lien avec le user agent de notre robot qui contient le mot « bot »
Nous allons ouvrir un ticket dans la forge pour faciliter le suivi.

Vous parlez de blocage, pouvez vous être plus précis ? Il n’y a aucun blocage qui cible le bot dlweb dans SPIP. Le bot est simplement identifié comme bot via son User Agent et subit le même traitement que tous les autres bots, à savoir :

  • on lui sert un cache disponible même si il est périmé
  • si le load du serveur est trop important on lui réponds via une « 429 Retry Later », ce qui n’est pas un blocage mais une demande polie de revenir à un moment où le serveur sera moins chargé

La constante _IS_BOT_FRIEND sert à distinguer des bots particuliers pour lesquels le traitement général indiqué ci-dessus pose des problèmes fonctionnels. Ce sont quelques cas particuliers qui sont des bots servant à générer les aperçus de partage sur les réseaux sociaux, et cela ne s’applique pas au bot de l’INA.

Donc je ne pense pas qu’on puisse faire grand chose au niveau de SPIP, il faut voir au cas par cas avec les responsables des sites concernés qui ont peut-être ajouté des règles plus stricts.

A titre perso j’ai eu par le passé des expériences désagréables avec le bot de l’INA qui générait énormément de requêtes et donc le comportement ne pouvait pas vraiment être qualifié de respecteux, il est donc possible que cet historique joue en votre défaveur, même si vous avez maintenant une politique de crawling plus respectueuse…

La suite ici https://git.spip.net/spip-contrib-outils/securite/-/issues/13 ?