Récupération des requêtes : Collecte de données de recherche provenant de plusieurs sources
Cet article explique comment nous collectons les requêtes de recherche à partir de cinq sources différentes pour constituer un ensemble de données complet pour le pipeline SEO.
Le problème : des données de requêtes incomplètes
S'appuyer sur une seule source de données donne une image incomplète :
-
Google Search Console : Ne montre que les requêtes qui ont généré des clics (manque les requêtes à forte impression et faible CTR)
-
Google Ads : Ne montre que les termes de recherche payants (manque le trafic organique)
-
Journaux de recherche en direct : Ne montrent que les recherches sur le site (manque la découverte externe)
-
Algolia : Ne montre que les requêtes de saisie semi-automatique (manque les recherches complètes)
Nous devons agréger les requêtes de toutes les sources pour comprendre le paysage complet de la recherche.
Aperçu : cinq sources de requêtes
Le pipeline récupère les données de cinq sources :
-
Google Search Console : Requêtes de recherche organique avec des indicateurs d'engagement
-
Google Ads : Termes de recherche payants avec des données de conversion
-
Journaux de recherche en direct : Requêtes des utilisateurs sur le site
-
Analytiques Algolia : Requêtes de recherche par saisie semi-automatique
-
Keyword Planner : Suggestions de mots-clés connexes
Chaque source fournit des informations différentes ; combinées, elles créent un ensemble de données de requêtes complet.
Étape 1 : Récupérer les requêtes de chaque source
1.1 Google Search Console (GSC)
Objectif : Collecter les requêtes de recherche organique qui ont généré des clics.
Entrée : URL du site web vérifiée dans Search Console.
Sortie : Liste de requêtes avec des indicateurs d'engagement (requêtes, clics, impressions, CTR, position).
Spécifications des données :
-
Texte de la requête
-
Clics (nombre d'utilisateurs ayant cliqué sur notre résultat)
-
Impressions (nombre de fois où notre résultat est apparu)
-
CTR (taux de clics en pourcentage)
-
Position moyenne dans les résultats de recherche
Période de rétrospective : 90 jours (maximum pour les données détaillées de requêtes)
Filtrage : Minimum 1 clic (exclut les requêtes avec impressions uniquement)
Accès : API Google Search Console via un compte de service avec un accès en lecture seule
1.2 Termes de recherche Google Ads
Objectif : Collecter les termes de recherche payants qui ont déclenché des annonces.
Entrée : Compte Google Ads avec un accès de compte gestionnaire.
Sortie : Liste de termes de recherche avec des indicateurs de performance (termes, impressions, clics, coût).
Spécifications des données :
-
Texte du terme de recherche
-
Impressions (nombre de vues de l'annonce)
-
Clics (nombre de clics sur l'annonce)
-
Coût en micro-unités (1 million d'unités = 1 unité monétaire)
Période de rétrospective : 2 ans (toutes les données historiques disponibles)
Agrégation : Combine les données de tous les comptes autorisés
Filtrage : Minimum 1 impression
Accès : API Google Ads via OAuth2
1.3 Requêtes de recherche en direct
Objectif : Collecter les requêtes de recherche des utilisateurs sur le site.
Entrée : Journaux de recherche internes du service de recherche.
Sortie : Liste de requêtes avec des indicateurs de fréquence (requêtes, comptes, engagement).
Spécifications des données :
-
Texte de la requête
-
Fréquence (nombre de fois où elle a été recherchée)
-
Données d'engagement (recherches ayant conduit à des interactions avec des produits)
Période de rétrospective : Variable (généralement 30 à 90 jours selon la rétention des journaux)
Pondération : Les requêtes sont pondérées par l'engagement (les recherches avec interactions ont un score plus élevé)
Filtrage : Déduplication et comptage des occurrences
1.4 Recherches principales Algolia
Objectif : Collecter les recherches par saisie semi-automatique à partir des analytiques Algolia.
Entrée : Données d'analytique de recherche Algolia.
Sortie : Liste des principales requêtes de recherche avec leur fréquence (principales recherches, comptes).
Spécifications des données :
-
Texte de la requête
-
Nombre de recherches (nombre de fois où elle a été recherchée)
Période de rétrospective : 90 jours
Filtrage : Limité aux recherches récentes à fort volume
Accès : API Analytiques Algolia via les identifiants de l'application
1.5 Idées du Keyword Planner
Objectif : Collecter les suggestions de mots-clés connexes.
Entrée : Mots-clés de départ (catégories de produits, familles, termes de recherche courants).
Sortie : Liste de mots-clés avec des indicateurs (mots-clés, volume de recherche, concurrence, suggestions d'enchères).
Spécifications des données :
-
Texte du mot-clé
-
Nombre moyen de recherches mensuelles
-
Niveau de concurrence (faible, moyen, élevé)
-
Valeur d'enchère suggérée
Filtrage : Mots-clés pertinents uniquement (exclure les suggestions non liées)
Accès : API Google Ads Keyword Planner via OAuth2
Étape 2 : Normaliser et agréger les requêtes
2.1 Normaliser le texte des requêtes
Les requêtes sont standardisées avant agrégation :
-
Conversion en minuscules
-
Normalisation des espaces blancs (réduction des espaces multiples à un seul)
-
Suppression des espaces blancs en début et en fin
-
Suppression des caractères spéciaux (le cas échéant)
2.2 Fusionner et dédupliquer
Les requêtes de toutes les sources sont combinées :
- Charger toutes les listes de requêtes sources
- Dédupliquer par texte de requête normalisé
- Fusionner les indicateurs (combiner les clics, impressions, recherches)
- Suivre quelles sources ont contribué à chaque requête
- Trier par score d'engagement combiné
2.3 Pondérer par les signaux d'engagement
Les requêtes sont notées en fonction de l'engagement :
-
Clics depuis GSC : Pondération la plus élevée (engagement direct avec notre contenu)
-
Clics depuis Ads : Pondération la plus élevée (intention payante de l'utilisateur convertie en action)
-
Recherches en direct avec engagement : Pondération moyenne (interaction sur le site)
-
Recherches en direct sans engagement : Pondération plus faible (recherche seule)
-
Saisie semi-automatique Algolia : Pondération plus faible (intention incomplète)
-
Idées de mots-clés : Pondération la plus faible (suggestions, pas des recherches observées)
La formule de pondération est configurable ; l'engagement est le signal de classement principal.
2.4 Filtrer les requêtes de faible qualité
Les requêtes non valides sont supprimées :
-
Spam : Requêtes composées uniquement de chiffres, de caractères spéciaux ou de tentatives d'injection
-
Marque uniquement : Requêtes qui ne sont que le nom de notre marque seul
-
Score faible : Requêtes en dessous du seuil d'engagement minimum
Étape 3 : Mise en œuvre technique
3.1 Processus de récupération des requêtes
Authentification et récupération des données pour chaque source :
- Obtenir les identifiants (compte de service, OAuth2 ou clé API)
- Se connecter à l'API respective
- Demander les données pour la plage de dates spécifiée
- Analyser la réponse au format JSON standard
- Sauvegarder dans le stockage local
3.2 Client Google Search Console
Processus :
- S'authentifier avec les identifiants du compte de service
- Interroger l'API Search Console pour le site spécifié
- Paginer les résultats (chaque page renvoie jusqu'à 25 000 résultats)
- Extraire la requête, les clics, les impressions, le CTR, la position
- Agréger et sauvegarder au format JSON
3.3 Client Google Ads
Processus :
- S'authentifier avec les identifiants OAuth2
- Énumérer tous les comptes autorisés
- Interroger chaque compte pour les termes de recherche
- Agréger les indicateurs entre les comptes
- Trier par impressions et sauvegarder
3.4 Analyse des journaux de requêtes en direct
Processus :
- Lire les fichiers journaux de recherche internes
- Analyser chaque entrée de journal (format JSON, une par ligne)
- Extraire le texte de la requête et les signaux d'engagement
- Dédupliquer les requêtes et compter les occurrences
- Pondérer par engagement et sauvegarder
3.5 Récupération des analytiques Algolia
Processus :
- S'authentifier avec les identifiants Algolia
- Appeler l'API Analytiques pour les données de recherche
- Demander les principales recherches avec filtre de plage de dates
- Renvoyer le nombre de recherches et les indicateurs de résultat
- Sauvegarder au format JSON standard
Étape 4 : Mises à jour incrémentielles
La récupération des requêtes prend en charge les mises à jour incrémentielles pour un traitement plus rapide :
Première exécution :
-
Récupérer toutes les données historiques (2 ans pour Ads, 90 jours pour GSC)
-
Calculer les embeddings (configuration initiale plus lente)
Exécutions suivantes :
-
Récupérer uniquement les nouvelles données depuis la dernière exécution
-
Réutiliser les embeddings mis en cache lorsque c'est possible
-
Les mises à jour incrémentielles se terminent rapidement
Logique d'optimisation :
-
Vérifier si la sortie existe et est récente
-
Ignorer si aucune nouvelle donnée n'est disponible
-
Reprendre depuis le dernier point de contrôle en cas d'échec
Étape 5 : Intégration avec le pipeline
Les requêtes récupérées alimentent les étapes suivantes du pipeline :
5.1 Regroupement des requêtes :
-
Entrée : Liste combinée de requêtes avec pondérations d'engagement
-
Processus : Grouper les requêtes similaires ensemble en utilisant des embeddings
-
Sortie : Regroupements de requêtes pour la génération de pages
5.2 Correspondance avec les produits :
-
Entrée : Embeddings et regroupements de requêtes
-
Processus : Associer chaque regroupement aux produits pertinents
-
Sortie : Mappages requête-vers-produit
5.3 Pages de requêtes :
-
Entrée : Regroupements et correspondances de produits
-
Processus : Générer le contenu de la page pour chaque regroupement
-
Sortie : Pages HTML et données de routage
5.4 Recherches connexes :
-
Entrée : Embeddings de requêtes et données de page
-
Processus : Trouver des requêtes similaires pour chaque page
-
Sortie : Suggestions de recherches connexes
Voir : Aperçu du pipeline SEO pour l'architecture complète du pipeline
Considérations sur la qualité des données
Gestion des doublons
Les requêtes peuvent apparaître dans plusieurs sources avec de légères variations. Exemple :
-
"mini pc" (GSC)
-
"Mini PC" (Ads)
-
"mini pc" (Live avec un espace supplémentaire)
Solution : Normaliser avant la fusion (minuscules, suppression des espaces, réduction des espaces)
Gestion du spam
Certaines sources contiennent des requêtes non valides :
-
Chaînes de caractères aléatoires
-
Tentatives d'injection SQL
-
Requêtes extrêmement longues
Solution : Filtrer par signaux d'engagement, composition des caractères, règles de longueur
Gestion de la saisonnalité
Le volume de requêtes varie selon les saisons :
-
Volume plus élevé pendant les fêtes
-
Volume plus faible pendant les vacances
Solution : Utiliser une période de rétrospective de 90 jours pour lisser les variations saisonnières
Caractéristiques de performance
-
Temps de récupération : Varie selon la source ; la récupération parallèle réduit le temps global
-
Volume de requêtes : De milliers à des millions selon les sources de données
-
Temps d'agrégation : Évolue avec le nombre total de requêtes uniques
-
Mises à jour incrémentielles : Significativement plus rapides qu'une récupération complète
-
Utilisation des ressources : CPU modéré pour l'agrégation, mémoire pour la déduplication
Gestion des erreurs
Le pipeline gère les échecs courants :
-
API indisponible : Nouvelle tentative avec temporisation exponentielle
-
Données manquantes : Ignorer et enregistrer ; continuer avec les autres sources
-
Entrées non valides : Filtrer et continuer le traitement
-
Échecs partiels : Sauvegarder les données réussies et la position du point de contrôle
Voir aussi
-
Aperçu du pipeline SEO — Architecture complète du pipeline
-
Regroupement des requêtes — Comment les requêtes similaires sont regroupées
-
Correspondance avec les produits — Associer les requêtes aux produits
-
Stratégie d'embedding — Embeddings de requêtes et de produits
-
Génération de recherches connexes — Construction des liens connexes
Références
API et services
-
API Google Search Console — Documentation officielle
-
API Google Ads — Documentation officielle
-
API Analytiques Algolia — Documentation officielle
Articles connexes
-
Aperçu du pipeline SEO — Architecture complète du pipeline
-
Regroupement des requêtes — Comment les requêtes sont regroupées
-
Correspondance avec les produits — Associer les requêtes aux produits