Google Ad Scraper

Pobiera aktywne reklamy Google konkurenta według domeny za pośrednictwem aktora Apify; wymaga tokenu Apify

Autor: gooseworks-ai · gooseworks-ai/goose-skills

Działa po konfiguracji ★ 6.4/10

Google Ad Scraper — Pobiera aktywne reklamy Google konkurenta według domeny za pośrednictwem aktora Apify; wymaga tokenu Apify

Co robi ten skill

Otacza CLI Python, które wywołuje aktora Apify `burbn/google-ads-search`, aby pobrać reklamy, które dana domena aktualnie wyświetla w Google, zwracając ID reklamodawcy, ID kreacji, format reklamy, treść reklamy, docelowy URL i datę rozpoczęcia jako JSON lub tabelę. Uruchamia się, gdy prosisz o scraping lub wyszukanie reklam Google konkurenta, badanie ich kreacji reklamowych lub analizę przekazu stojącego za ich reklamami w wyszukiwarce i reklamami displayowymi. Wymaga APIFY_API_TOKEN (lub klucza API Gooseworks) i płatnego uruchomienia Apify dla każdej domeny.

Raport z testu

Znaleziono umiejętność w skills/ads/capabilities/google-ad-scraper/ (SKILL.md, scripts/search_google_ads.py, skill.meta.json wszystkie HTTP 200) i uruchomiono skrypt lokalnie: --help, missing-args i missing-token ścieżki zachowują się zgodnie z dokumentacją, a format_summary renderowany poprawnie na makietowym zbiorze danych ukształtowanym zgodnie z udokumentowanym schematem. Nie mogłem uruchomić prawdziwego scrapingu (potrzebuje APIFY_API_TOKEN plus płatnego uruchomienia aktora Apify), więc outputMeasured jest fałszywe; zweryfikowałem, że alternatywa bazowa jest faktycznie zablokowana — curl adstransparency.google.com zwraca pakiet JS o rozmiarze 2.5 MB, gdzie jedyne trafienia "hubspot" to powtórzony parametr zapytania, zero kreacji. Dwie konkretne wady znalezione przez wykonanie, a nie tylko czytanie: zaślepienie udanego wyszukiwania reklamodawcy pokazuje, że flaga --company nigdy nie może działać, ponieważ resolve_advertiser_id zwraca {advertiser_id, advertiser_name, url}, podczas gdy main() wymaga result["domain"] i kończy działanie z kodem 1 ("Could not resolve company name to domain"); a zalecana tabela podsumowania --output pomija variantContent, pole treści reklamy, od którego zależy własny przypadek użycia "messaging analysis" umiejętności. Brak niebezpiecznych wzorców (brak curl|sh, brak base64, brak eksfiltracji sekretów, brak tekstu iniekcji), chociaż token API jest przekazywany jako parametr zapytania URL ?token= i wysyłany do api.gooseworks.ai, gdy ustawiony jest GOOSEWORKS_API_KEY.

Testowano: 2026-07-21 · Claude Code 2.x (agent harness)

Instalacja

git clone --depth 1 https://github.com/gooseworks-ai/goose-skills.git /tmp/google-ad-scraper-src
mkdir -p ~/.claude/skills
cp -R /tmp/google-ad-scraper-src/skills/ads/capabilities/google-ad-scraper ~/.claude/skills/google-ad-scraper
# pip3 install requests   # undeclared dependency, no requirements.txt in the skill
# export APIFY_API_TOKEN=apify_api_...   # or GOOSEWORKS_API_KEY=... to route via api.gooseworks.ai
# Run: python3 ~/.claude/skills/google-ad-scraper/scripts/search_google_ads.py \
#        --domain hubspot.com --max-ads 30 --output summary
# Note: SKILL.md's examples use skills/google-ad-scraper/scripts/... which matches neither the repo layout nor the install dir.

Komendy i przykładowe prompty

  • /google-ad-scraperPobiera aktywne reklamy Google konkurenta według domeny za pośrednictwem aktora Apify; wymaga tokenu Apify

Skille uruchamiają się na zwykłe polecenia — bez komend do zapamiętania. Po instalacji aktywują go prompty takie jak te (po angielsku):

  • Scrape our competitor's Google Ads by domain
  • Show me what ad formats this competitor is running
  • Research competitor messaging from their Google ads