Google Search
Le node Google Search récupère en temps réel les résultats de recherche Google (SERP) pour toute requête, avec prise en charge de plusieurs types de recherche, du géo-ciblage et de l'exclusion d'URLs.
À quoi sert le node Google Search ?
Le node Google Search récupère en temps réel les données de page de résultats Google (SERP) pour toute requête. Il prend en charge plusieurs types de recherche (web, actualités, images, vidéos, shopping, lieux, cartes, scholar, brevets) et retourne des résultats structurés incluant les listings organiques, les questions associées, les recherches connexes, et plus encore.
Cas d’usage typiques :
- Suivre les positions organiques pour des mots-clés cibles selon le pays et la langue
- Analyser la présence SERP des concurrents et leur visibilité sur des requêtes stratégiques
- Trouver les contenus les mieux classés sur un sujet pour la recherche d’inspiration
- Surveiller la couverture médiatique de marques, produits ou sujets sectoriels
- Découvrir des commerces locaux avec des recherches Places géo-ciblées
Configuration rapide
Connectez l’intégration Serper Dev
Ouvrez Settings > Integrations et connectez l’intégration Serper Dev. Le node Google Search utilise Serper.dev en interne pour interroger Google.
Ajoutez le node au canvas
Ouvrez la bibliothèque de nodes, allez dans Integrations > Google, puis glissez-déposez le node Google Search sur votre espace de travail.
Connectez l’entrée Query
Connectez le port d’entrée du champ Query à un node en amont (Text Input, LLM, ou tout node produisant une chaîne). Vous pouvez également passer un tableau JSON de requêtes pour exécuter plusieurs recherches en un seul appel.
Configurez le type et le géo-ciblage
Dans les paramètres du node, choisissez le Type de recherche (Search, News, Images, etc.), le Country (gl), le Locale (hl), et une Location optionnelle pour des résultats géo-ciblés.
Connectez la sortie
Connectez le port de sortie Google Results au node suivant. Le node retourne une chaîne JSON exploitable par un JSON Path Extractor ou directement par un LLM.
Paramètres de configuration
Champs obligatoires
query string required Requête de recherche — La requête Google à exécuter. Prend en charge tous les opérateurs Google (site:, intitle:, inurl:, guillemets pour correspondance exacte, exclusions). Vous pouvez également passer un tableau JSON de chaînes pour grouper plusieurs requêtes en une seule exécution.
type select required default: Search Type de recherche — Quelle verticale Google interroger. Une parmi : Search, Images, Videos, News, Shopping, Places, Maps, Scholar, Patents. La structure de sortie dépend de ce choix.
Champs optionnels
input_blacklist_urls string URLs exclues (entrée) — Liste d’URLs séparées par des virgules à exclure des résultats, transmise via une entrée connectable. Chaque URL est ajoutée à la requête comme opérateur -inurl:. Fusionnée avec le paramètre statique blacklist_urls.
input_gl string Pays (entrée) — Entrée connectable qui remplace le paramètre Country statique au moment de l’exécution. Une parmi : be, ca, fr, de, it, es, ch, gb, us.
input_hl string Langue (entrée) — Entrée connectable qui remplace le paramètre Locale statique au moment de l’exécution. Une parmi : en, fr, de, it, es, nl.
country select default: France (fr) Pays (gl) — Paramètre de pays Google. Affecte les résultats régionaux retournés. Par défaut, France.
location string Localisation — Ville ou région spécifique pour des résultats géo-ciblés, ex. Paris, France. Particulièrement utile avec les types Places et Maps.
locale select default: French (fr) Langue (hl) — Paramètre de langue Google. Affecte la langue des extraits et métadonnées. Par défaut, French.
page number default: 1 Numéro de page — Page de résultats à récupérer. La page 1 retourne les positions 1 à 10, la page 2 les positions 11 à 20, et ainsi de suite.
auto_correct boolean default: true Correction automatique — Lorsque cette option est activée, Google corrige les requêtes mal orthographiées. Désactivez-la pour forcer la correspondance littérale, utile pour les noms de marque ou les termes rares.
blacklist_urls textarea URLs exclues (statique) — Liste d’URLs séparées par des virgules à exclure des résultats. Chaque entrée est ajoutée à la requête comme opérateur -inurl:. Exemple : example.com, ads.example.fr, *.spam.com.
Le node Google Search accepte une chaîne unique OU un tableau JSON de chaînes. Passer un tableau (ex. ["seo tools", "seo audit"]) exécute une recherche par requête en un seul run du node.
Que produit le node en sortie ?
Le node retourne une chaîne JSON dont la structure dépend du paramètre Type. Pour une recherche Search standard, les résultats arrivent dans le tableau organic ; News peuple news, Images peuple images, Maps et Places peuplent places.
{
"searchParameters": {
"q": "site:example.com",
"gl": "fr",
"hl": "fr",
"type": "search"
},
"organic": [
{
"title": "Titre de la page",
"link": "https://example.com/page",
"snippet": "Description de la page...",
"position": 1
}
],
"peopleAlsoAsk": [
{
"question": "Qu'est-ce que... ?",
"snippet": "Réponse...",
"title": "Titre de la source",
"link": "https://example.com"
}
],
"relatedSearches": [
{ "query": "terme de recherche associé" }
]
}
results string Une chaîne JSON contenant la charge utile SERP retournée par Serper.dev. Les clés de premier niveau varient selon le type de recherche : organic, news, images, videos, shopping, places, peopleAlsoAsk, relatedSearches, knowledgeGraph, etc.
Exemples d’utilisation
Exemple 1 : Suivi de positions SEO
Suivez le classement de votre domaine pour un mot-clé cible en France, page 1.
Configuration :
- Query :
meilleurs outils SEO 2025 - Type : Search
- Country : France (fr)
- Locale : French (fr)
- Page : 1
Connectez la sortie à un JSON Path Extractor avec $.organic[*].link pour extraire la liste des URLs classées, puis à un node Conditional pour vérifier la présence de votre domaine.
Exemple 2 : Veille de presse multi-pays
Surveillez la couverture médiatique de votre marque dans plusieurs pays en passant le pays dynamiquement.
Configuration :
- Query :
'Draft and Goal' OR 'dng.ai'(utiliser des guillemets simples dans la valeur) - Type : News
- input_gl : connecté à un Text Input qui itère sur
us,gb,fr
Exécutez le tout dans un node Loop pour parcourir une liste de codes pays.
Exemple 3 : Recherche de commerces locaux
Trouvez des restaurants italiens dans une ville donnée grâce au géo-ciblage.
Configuration :
- Query :
restaurant italien - Type : Places
- Country : France (fr)
- Location : Paris, France
Le tableau places en sortie contient nom, adresse, note et CID pour chaque commerce.
Exemple 4 : Recherche concurrentielle filtrée
Excluez les domaines bruyants pour concentrer la SERP sur les vrais concurrents.
Configuration :
- Query :
seo audit checklist - Type : Search
- Blacklist URLs :
pinterest.com, reddit.com, quora.com
Chaque entrée de la blacklist est ajoutée comme opérateur -inurl: au moment de l’exécution.
Problèmes courants
Le node échoue avec une erreur d'intégration Serper Dev
Cause : L’intégration Serper Dev n’est pas configurée ou la clé API est invalide.
Solution : Ouvrez Settings > Integrations, localisez Serper Dev, et ajoutez ou rafraîchissez la clé API depuis votre tableau de bord serper.dev.
Aucun résultat retourné alors que la requête fonctionne sur google.com
Cause : La combinaison Country / Locale, la valeur Location, ou des URLs en blacklist trop restrictives filtrent tous les résultats.
Solution : Supprimez d’abord la Location, élargissez Country et Locale, puis retirez les URLs en blacklist une par une jusqu’à ce que les résultats réapparaissent.
Le node retourne une structure différente de celle attendue
Cause : Le schéma de sortie dépend du paramètre Type. Une recherche News retourne un tableau news, pas organic.
Solution : Vérifiez le Type dans les paramètres du node et ajustez le JSON Path Extractor en aval ($.news[*], $.images[*], $.places[*], etc.).
Les résultats auto-corrigés ne correspondent pas à ma requête exacte
Cause : Google a réécrit la requête car Auto correct est activé.
Solution : Désactivez Auto correct dans les paramètres du node pour forcer la requête littérale, utile pour les noms de marque, termes rares ou références produit.
Erreur Invalid JSON format quand je passe plusieurs requêtes
Cause : L’entrée query commence par [ ou { mais n’est pas un JSON valide.
Solution : Passez soit une chaîne simple (requête unique), soit un tableau JSON de chaînes valide (ex. ['seo', 'sea'] sérialisé en JSON). Validez la sortie du node en amont avant de la connecter.
Bonnes pratiques
Combinez les opérateurs Google dans le champ Query pour affiner les résultats : site:, intitle:, inurl:, guillemets pour correspondance exacte, et - pour exclure — tous fonctionnent comme sur google.com.
Passez un tableau JSON de requêtes pour exécuter plusieurs recherches en un seul run, puis itérez sur le résultat avec un node Loop — moins de nodes, moins d’appels NATS.
Chaque appel Google Search consomme un crédit Serper.dev par requête du tableau. Surveillez votre quota lorsque vous bouclez sur de grandes listes de mots-clés.
Les résultats géographiques évoluent au fil du temps. Pour des benchmarks (suivi de positions, part de voix), planifiez le workflow à intervalles fixes et stockez les sorties en base pour comparer les runs.
Comment s’intègre-t-il dans un workflow ?
Le node Google Search se place typiquement en début de pipeline SEO ou de recherche, alimentant en URLs ou en extraits les nodes d’extraction et d’analyse en aval.
graph LR
Input[Text Input mot-clé] --> Search[Google Search]
Search --> Extract[JSON Path Extractor liens organiques]
Extract --> Loop[Loop sur les URLs]
Loop --> Scraper[Web Scraper]
Scraper --> LLM[LLM résume le contenu]
Nodes associés
Comptez le nombre exact de résultats Google pour une requête sans récupérer la charge utile SERP.
Récupérez les analyses de recherche (impressions, clics, CTR, position) de vos propriétés Search Console.
Scrapez le contenu des URLs retournées par Google Search pour aller plus loin dans l’analyse.
Extrayez des champs spécifiques (liens, extraits, positions) depuis la charge utile JSON SERP.
Résumez, classifiez ou analysez les résultats SERP retournés par Google Search.
Itérez sur une liste de mots-clés ou d’URLs retournées pour les traiter une à une.