04 · Data · SEO technique

Crawler SEO industriel : transformer des millions de pages en décisions techniques

À l'échelle de plusieurs millions d'URL, un audit ponctuel ne suffit plus. Le crawler charge chaque page dans Chromium, exécute son JavaScript et conserve les signaux nécessaires pour comparer les crawls dans le temps : réponses HTTP, indexabilité, canonicals, maillage, LCP, CLS et empreinte du contenu. Un assistant relie ensuite ces résultats aux logs serveur, à Search Console et aux données analytics pour faire remonter les anomalies réellement prioritaires.

Interface du crawler SEO industriel affichant l'analyse d'un crawl et ses priorités techniques
Crawler SEO industriel · aperçu du produit

// sous le capot

Architecture et décisions techniques

J'ai séparé le plan de contrôle du calcul intensif. FastAPI et PostgreSQL pilotent les projets, les réglages et les jobs ; chaque crawl lance un runner Node.js et Puppeteer isolé. BigQuery conserve les faits analytiques par URL, R2 les DOM rendus et Next.js restitue les analyses et leur historique.

  1. 01

    Observer le rendu, pas seulement le HTML brut

    Puppeteer exécute le JavaScript, suit les réponses et sous-requêtes, puis extrait le contenu, les canonicals, le maillage et les métriques LCP et CLS. Une page témoin inexistante fournit aussi une empreinte pour détecter les soft 404.

  2. 02

    Stocker chaque donnée là où elle reste exploitable

    PostgreSQL garde le plan de contrôle, BigQuery reçoit les faits détaillés de chaque URL et R2 stocke les DOM rendus sous forme compressée. La table analytique est partitionnée dans le temps et regroupée par projet, crawl et URL pour interroger l'historique sans gonfler la base transactionnelle.

  3. 03

    Superviser chaque exécution lourde

    Chaque crawl tourne dans un conteneur dédié, avec Docker en validation et Cloud Run en production. Un bail, un heartbeat et un identifiant d'exécution évitent les doubles traitements. Si un worker disparaît, le job est replanifié avec temporisation ; après épuisement des tentatives, le volume déjà écrit est réconcilié depuis BigQuery et le crawl marqué comme partiel.

  4. 04

    Donner des outils aux analyses IA

    L'assistant dispose d'outils dédiés pour interroger les crawls, les logs serveur, Search Console, GA4 et Matomo. Il travaille sur des jeux de données tracés et bornés, compare les crawls URL par URL et transforme le diagnostic en rapports partageables.

Voir l’ensemble des réalisations