~/business/google-ads-scraper

Google Ads Scraper — Search, YouTube et Shopping Ads

Chaque annonce qu'un concurrent diffuse sur Google — Search, YouTube, Shopping, Maps et Play — trouvée par domaine, annonceur ou marque, avec les jours de diffusion de chaque annonce, les pays atteints et, dans l'UE, ses impressions et son ciblage d'audience.

veille publicitaire TypeScript Monde
proooxy/google-ads-scraper — specs
catégoriebusiness / veille publicitaire
langageTypeScript
stackTypeScript
marchésMonde
sortieJSON propre, prêt pour le RAG

fonctionnalités clés

Chaque annonce qu'un annonceur diffuse sur Google Search, YouTube, Shopping, Maps et Play

Recherchez des annonces par domaine du site, ID d'annonceur, nom de marque, ou une URL de page copiée — combinés en un seul run

Premier et dernier jour de diffusion, et le nombre de jours de diffusion de chaque annonce

Le nom légal vérifié par Google pour l'annonceur, et sa localisation

Fourchettes d'impressions UE par pays et plateforme, et les critères d'audience utilisés — avec `details` activé

Le titre d'une annonce texte, les produits d'une annonce Shopping, la vidéo YouTube d'une annonce vidéo, et la page de destination — avec `content` activé, facturé seulement si trouvé

Filtres par pays, plateforme, format et date ; une période telle que 30 days évolue à chaque exécution planifiée

cas d’usage

  • Surveiller les annonces Google des concurrents sur un planning, pour que les nouvelles campagnes apparaissent au run suivant
  • Recherche créative sur tout un marché : les titres, produits et vidéos que les annonceurs maintiennent en diffusion
  • Planification média avec des fourchettes d'impressions UE par pays et plateforme
  • Contrôles d'agence et de sécurité de marque : quelles entités juridiques paient les annonces menant à un site web
  • Génération de leads : quelles entreprises font de la publicité sur Google, et depuis quand
  • Fournir aux agents IA des données d'annonces concurrentes via le serveur MCP d'Apify

paramètres d’entrée

ParamètreTypeRequisDescription
domainsarrayoptionnelChaque annonce menant à ces sites web, de tout annonceur en diffusant une
advertiserIdsarrayoptionnelChaque annonce de ces annonceurs, par ID ou URL de page annonceur
advertiserNamesarrayoptionnelUn nom d'entreprise ou de marque ; l'annonceur portant ce nom avec le plus d'annonces est recherché
startUrlsarrayoptionnelURLs de page annonceur, d'une seule annonce, ou de recherche par domaine ; les filtres d'une URL s'appliquent à cette URL
regionstringoptionnelSeulement les annonces diffusées dans ce pays, ou partout
platformstringoptionnelGoogle Search, YouTube, Google Shopping, Google Maps, ou Google Play
adFormatstringoptionnelTexte, image, ou vidéo
dateFromstringoptionnelDiffusée à partir d'une date, ou une période en arrière depuis aujourd'hui telle que 30 days
dateTostringoptionnelDiffusée jusqu'à une date ; vide signifie aujourd'hui
maxItemsnumberoptionnelMaximum d'annonces stockées — le plafond ferme des dépenses du run
maxAdsPerSearchnumberoptionnelArrête chaque domaine, annonceur, nom, ou URL après ce nombre d'annonces
includeDetailsbooleanoptionnelPays, fourchettes d'impressions UE, et critères d'audience, facturé par annonce
includeAdContentbooleanoptionnelTitres, produits, vidéos YouTube, et pages de destination, facturé seulement si trouvé

Exemple de sortie

 1{
 2  "creativeId": "CR04380650295827365889",
 3  "adUrl": "https://adstransparency.google.com/advertiser/AR18378488041124659201/creative/CR04380650295827365889?region=NL",
 4  "advertiserId": "AR18378488041124659201",
 5  "advertiserName": "Nike Retail BV",
 6  "advertiserLegalName": "Nike Retail BV",
 7  "advertiserCountry": "NL",
 8  "advertiserVerified": true,
 9  "format": "TEXT",
10  "firstShown": "2025-10-22T15:05:47.575Z",
11  "lastShown": "2026-09-28T13:07:21.342Z",
12  "daysShown": 342,
13  "region": "NL",
14  "queryType": "advertiserId",
15  "details": {
16    "euImpressions": { "min": 250000, "max": 300000 },
17    "audience": {
18      "demographicInfo": { "included": true, "excluded": false },
19      "geographicLocations": { "included": true, "excluded": false },
20      "contextualSignals": { "included": true, "excluded": false }
21    }
22  },
23  "content": {
24    "headline": "{KeyWord:Nike Vomero}",
25    "description": "Découvre {Keyword:chaussures Nike} sur Nike.com. Commande sur le site officiel Nike.",
26    "landingUrl": null
27  }
28}

Réduit par souci de longueur : avec details activé, details liste aussi chaque pays où l’annonce a été diffusée, avec son premier et dernier jour et, dans l’UE, les impressions par plateforme ; content porte aussi products, youtubeVideoId, et youtubeUrl.

Conseils

  • Recherchez par domaine, pas par nom de marque, pour une couverture complète. Une recherche par domaine renvoie tous les annonceurs dont les annonces mènent au site — y compris les entités régionales et revendeurs qu’un nom de marque manque.
  • maxItems plafonne vos dépenses. C’est le plafond ferme des annonces qu’un run stocke et facture ; maxAdsPerSearch empêche un gros annonceur de tout épuiser.
  • Utilisez une date relative pour la surveillance. Réglez dateFrom sur 30 days pour un run planifié et chaque exécution couvrira le dernier mois.
  • Les espaces réservés d’insertion de mots-clés sont conservés tels que Google les stocke. Un titre tel que {KeyWord:Nike Vomero} affiche le texte de repli utilisé quand le terme de recherche ne le remplace pas.

faq

Ai-je besoin d'un compte Google ou d'une clé API ?
Non. Les annonces proviennent de la bibliothèque d'annonces publique de Google, que n'importe qui peut consulter sans se connecter. Vous exécutez l'Actor sur Apify, et chaque annonce est une ligne du dataset.
Pourquoi un nom de marque ne trouve-t-il qu'un seul annonceur ?
Les marques font souvent de la publicité via plusieurs entités juridiques — Nike via Nike, Inc., Nike Retail BV, et d'autres. Un nom trouve la principale ; recherchez plutôt le domaine de la marque pour obtenir tous les annonceurs dont les annonces y mènent.
Pourquoi certaines annonces textuelles n'ont-elles pas de titre ?
Google archive de nombreuses annonces textuelles sous forme d'image de l'annonce. Elles arrivent alors avec une image d'aperçu au lieu d'un titre ; les titres et descriptions proviennent des annonces textuelles que Google affiche en direct.
D'où viennent les chiffres d'impressions et d'audience ?
Google les publie pour les annonces diffusées dans l'Union européenne, en vertu du règlement sur les services numériques (DSA), et comptabilise les impressions avec un délai d'environ trois mois. Hors UE, les détails indiquent les pays où une annonce a été diffusée et les jours de diffusion qui y correspondent.

similaires dans ~/business

Exécutez Google Ads Scraper — Search, YouTube et Shopping Ads, ou obtenez un projet sur mesure

Commencez à extraire sur Apify en quelques minutes, ou engagez-moi pour construire un scraper sur mesure et un pipeline RAG adaptés exactement à votre source et à votre schéma.

exécuter sur Apify obtenir des données sur mesure