FlyweightBot: Unser Webcrawler

FlyweightBot ist der Webcrawler der Flyweight GmbH. Er liest öffentliche Seiten von Onlineshops, deren Betreiber unseren AI-Shopping-Assistenten installiert haben. So kann der Assistent Fragen anhand der Produkte, Richtlinien und Hilfeinhalte des Stores beantworten.

Wenn Ihr diese Seite über Eure Zugriffsprotokolle gefunden habt, erfahrt Ihr hier, wie Ihr den Crawler erkennt, zulässt oder blockiert.

Warum er Eure Website besucht

Wir crawlen eine Domain erst, nachdem jemand Flyweight im Store installiert und die Domain als Inhaltsquelle verbunden hat. Wir durchsuchen weder das offene Web noch folgen wir Links außerhalb der verbundenen Domain.

Crawls laufen beim ersten Verbinden und bei Inhaltsaktualisierungen, nicht dauerhaft im Hintergrund. Falls Ihr den Besuch nicht erwartet habt, hat möglicherweise jemand aus Eurem Team die App im Shopify App Store installiert.

So erkennt Ihr ihn

Jede Anfrage enthält dieses Token am Ende des User-Agent-Headers:

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

Der Crawler nutzt einen echten Chrome-Browser und stellt Seiten wie im Browser Eurer Kundschaft dar. Ein vollständiges Beispiel:

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)

Die Chrome-Version ändert sich mit Browser-Updates. Prüft deshalb auf die Zeichenfolge FlyweightBot, nicht auf den vollständigen Header oder eine bestimmte Chrome-Version.

Woher die Anfragen kommen

Crawl-Anfragen kommen derzeit von einer einzelnen statischen IP-Adresse, die ausschließlich uns zugeordnet ist:

52.212.232.38

Die IP-Adresse ist das präzisere Merkmal für eine Freigabeliste. Das Token identifiziert den Crawler auch dann, wenn wir einen weiteren Zugangsweg ergänzen. Akzeptiert ein Tool nur einen User Agent, verwendet FlyweightBot und beachtet den Hinweis zur Fälschbarkeit unten.

So erlaubt Ihr den Zugriff

Erstellt in Cloudflare eine benutzerdefinierte WAF-Regel mit der Aktion Skip. Zum Abgleich der IP-Adresse:

(ip.src eq 52.212.232.38)

Zum gemeinsamen Prüfen von User Agent und IP-Adresse:

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

Jeder kann das FlyweightBot-Token in einen User-Agent-Header kopieren. Nutzt eine reine User-Agent-Regel nur, wenn keine präzisere Möglichkeit verfügbar ist. Bevorzugt eine eng begrenzte Ausnahme statt eines pauschalen Skip:

(http.user_agent contains "FlyweightBot")

Andere WAFs und CDNs bieten entsprechende Freigabe- oder Umgehungsregeln. In nginx muss eine Regel die Klassifizierung verwenden, damit sie wirkt:

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

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

Shopify-Apps für Betrugsschutz, Länder- oder Bot-Sperren bieten häufig Freigabelisten. Tragt die obige IP-Adresse ein oder FlyweightBot, wenn das Feld einen User Agent erwartet. Eine Sperre kann dazu führen, dass dem Assistenten Inhalte fehlen oder veraltete Informationen vorliegen.

So beendet Ihr das Crawling

Der Crawler liest derzeit keine robots.txt. Eine dortige Regel stoppt ihn deshalb nicht. Entfernt die Domain als Inhaltsquelle im Flyweight-Admin oder deinstalliert die App, um weitere geplante Crawls zu verhindern. Ein bereits laufender Crawl beendet seinen aktuellen Seitenstapel, üblicherweise innerhalb weniger Minuten.

Ihr könnt Anfragen auch über Eure WAF oder Euer CDN mit den obigen Ausdrücken und einer Blockieraktion sperren. Kontaktiert uns möglichst vorher, denn eine Sperre verhindert, dass der Assistent sein Wissen über Euren Store aktualisiert.

Kontakt

Fragen zum Crawler oder Anfragen zum Beenden des Crawlings einer von Euch verwalteten Domain: hello@flyweight.io. Wir beantworten diese direkt.

Flyweight GmbH, Jungbuschstraße 28, 68159 Mannheim, Deutschland. Impressum.