FlyweightBot : notre robot d’exploration

FlyweightBot est le robot d’exploration de Flyweight GmbH. Il lit les pages publiques des boutiques dont les propriétaires ont installé notre assistant d’achat AI. Celui-ci peut ainsi répondre à partir des produits, politiques et contenus d’aide de la boutique.

Si vous avez trouvé cette page dans vos journaux d’accès, voici comment identifier, autoriser ou bloquer le robot.

Pourquoi visite-t-il votre site ?

Nous explorons un domaine uniquement après l’installation de Flyweight dans la boutique et la connexion du domaine comme source de contenu. Nous n’explorons pas le Web ouvert et ne suivons pas les liens hors du domaine connecté.

L’exploration intervient à la première connexion et lors de l’actualisation du contenu, pas en continu. Si cette visite vous surprend, un membre de votre équipe a peut-être installé l’app depuis le Shopify App Store.

Comment l’identifier

Chaque requête contient ce jeton à la fin de son en-tête User-Agent :

FlyweightBot/1.0 (+https://flyweight.io/bot)

Le robot utilise un véritable navigateur Chrome pour afficher les pages comme les voit votre clientèle. Exemple complet :

Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/143.0.0.0 Safari/537.36 FlyweightBot/1.0 (+https://flyweight.io/bot)

La version de Chrome change avec les mises à jour. Recherchez la chaîne FlyweightBot, pas l’en-tête complet ni une version précise de Chrome.

D’où viennent les requêtes ?

Le trafic d’exploration sort actuellement par une seule adresse IP statique qui nous est dédiée :

52.212.232.38

L’adresse IP est le critère le plus précis pour une liste d’autorisation. Le jeton continue d’identifier le robot si nous ajoutons un autre chemin d’accès. Si votre outil accepte uniquement un User Agent, utilisez FlyweightBot en tenant compte du risque d’usurpation décrit ci-dessous.

Comment autoriser l’accès

Dans Cloudflare, créez une règle WAF personnalisée avec l’action Skip. Pour vérifier l’adresse IP :

(ip.src eq 52.212.232.38)

Pour vérifier ensemble le User Agent et l’adresse IP :

(http.user_agent contains "FlyweightBot" and ip.src eq 52.212.232.38)

N’importe qui peut copier le jeton FlyweightBot dans un en-tête User-Agent. N’utilisez une règle fondée uniquement sur celui-ci que si aucune option plus précise n’existe. Préférez une exception limitée à un Skip global :

(http.user_agent contains "FlyweightBot")

Les autres WAF et CDN proposent des règles d’autorisation équivalentes. Dans nginx, une règle doit utiliser la classification pour qu’elle prenne effet :

map $http_user_agent $blocked_bot {
    default             0;
    "~*(bot|crawler)"   1;
    "~*FlyweightBot"    0;
}

server {
    if ($blocked_bot) {
        return 403;
    }
}

Les apps Shopify de lutte contre la fraude ou de blocage des pays et des robots proposent souvent une liste d’autorisation. Ajoutez l’adresse IP ci-dessus, ou FlyweightBot si le champ attend un User Agent. Un blocage peut priver l’assistant de contenu ou lui laisser des informations obsolètes.

Comment arrêter l’exploration

Le robot ne lit pas actuellement robots.txt : une règle dans ce fichier ne l’arrêtera pas. Supprimez le domaine des sources de contenu dans l’administration Flyweight ou désinstallez l’app pour empêcher la programmation de nouvelles explorations. Une exploration en cours termine son lot de pages, généralement en quelques minutes.

Vous pouvez aussi bloquer les requêtes dans votre WAF ou CDN avec les expressions ci-dessus et une action de blocage. Contactez-nous d’abord si possible : le blocage empêche l’assistant d’actualiser ses connaissances sur votre boutique.

Contact

Questions sur le robot ou demandes d’arrêt concernant un domaine que vous administrez : hello@flyweight.io. Nous y répondons directement.

Flyweight GmbH, Jungbuschstraße 28, 68159 Mannheim, Allemagne. Mentions légales.