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.
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ètre | Type | Requis | Description |
|---|---|---|---|
domains | array | optionnel | Chaque annonce menant à ces sites web, de tout annonceur en diffusant une |
advertiserIds | array | optionnel | Chaque annonce de ces annonceurs, par ID ou URL de page annonceur |
advertiserNames | array | optionnel | Un nom d'entreprise ou de marque ; l'annonceur portant ce nom avec le plus d'annonces est recherché |
startUrls | array | optionnel | URLs de page annonceur, d'une seule annonce, ou de recherche par domaine ; les filtres d'une URL s'appliquent à cette URL |
region | string | optionnel | Seulement les annonces diffusées dans ce pays, ou partout |
platform | string | optionnel | Google Search, YouTube, Google Shopping, Google Maps, ou Google Play |
adFormat | string | optionnel | Texte, image, ou vidéo |
dateFrom | string | optionnel | Diffusée à partir d'une date, ou une période en arrière depuis aujourd'hui telle que 30 days |
dateTo | string | optionnel | Diffusée jusqu'à une date ; vide signifie aujourd'hui |
maxItems | number | optionnel | Maximum d'annonces stockées — le plafond ferme des dépenses du run |
maxAdsPerSearch | number | optionnel | Arrête chaque domaine, annonceur, nom, ou URL après ce nombre d'annonces |
includeDetails | boolean | optionnel | Pays, fourchettes d'impressions UE, et critères d'audience, facturé par annonce |
includeAdContent | boolean | optionnel | Titres, 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.
maxItemsplafonne vos dépenses. C’est le plafond ferme des annonces qu’un run stocke et facture ;maxAdsPerSearchempêche un gros annonceur de tout épuiser.- Utilisez une date relative pour la surveillance. Réglez
dateFromsur30 dayspour 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 ?
Pourquoi un nom de marque ne trouve-t-il qu'un seul annonceur ?
Pourquoi certaines annonces textuelles n'ont-elles pas de titre ?
D'où viennent les chiffres d'impressions et d'audience ?
similaires dans ~/business
Anytime Mailbox Scraper — Boîtes postales virtuelles et registre CMRA
Boîtes postales virtuelles mondiales, vérifiées en registre CMRA.
ouvrirIndeed Scraper — Offres, employeurs, avis et salaires
Les offres et les employeurs derrière elles : descriptions, salaires, avis.
ouvrirShopify Store Leads — Taille du catalogue, applis et contacts
Leads qualifiés de boutiques Shopify : catalogue, stack et contacts.
ouvrir