Communitygithub.com

aiagentwithdhruv/skills

Scrape und verifiziere Geschäftsleads mit Apify, klassifiziere sie mit LLM, reichere E-Mails an und speichere sie in Google Sheets. Verwende es, wenn der Benutzer nach Leads suchen, Unternehmen scrapen, Interessentenlisten erstellen oder Lead-Datenbanken für jede Branche und jeden Standort aufbauen möchte.

Was ist skills?

Diese Fähigkeit ermöglicht es, Geschäftsleads systematisch zu scrapen, zu verifizieren und strukturiert zu speichern. Sie nutzt Apify zum Scrapen von Leads, ein LLM zur Klassifizierung der Branchenrelevanz (mindestens 80% Übereinstimmung) und AnyMailFinder zur Anreicherung fehlender E-Mail-Adressen. Die Leads werden abschließend in eine Google Sheet-Tabelle hochgeladen. Besonders nützlich ist die parallele Scraping-Strategie für große Mengen (1000+ Leads), die eine geografische Aufteilung automatisch vornimmt (z.B. USA in 4 Regionen), was zu einer 3-5x schnelleren Verarbeitung führt. Die Fähigkeit unterstützt plattformübergreifend die Arbeit mit Apify, Google Sheets und LLM-basierter Klassifizierung und ist ideal für Vertriebs- und Marketingteams, die schnell qualifizierte Lead-Datenbanken aufbauen müssen.

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/aiagentwithdhruv/skills/tree/HEAD/scrape-leads

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Lead-Scraping & Verifizierung

Ziel

Scrape Leads mit Apify (code_crafter/leads-finder), verifiziere deren Relevanz (Branchenübereinstimmung > 80%) und speichere sie in einer Google Sheet. Bei großen Scrapes (1000+ Leads) verwende paralleles Scraping für 3-5x schnellere Leistung.

Eingaben

  • Branche: Die Zielbranche (z.B. "Klempner", "Software-Agenturen")
  • Standort: Der Zielstandort (z.B. "Texas", "Vereinigte Staaten", "Kalifornien"). Skripte formatieren automatisch in Apfys erforderliche Formatierung (US-Bundesstaaten erhalten automatisch den Zusatz ", us").
  • Gesamtanzahl: Die gewünschte Gesamtzahl an Leads

Skripte

Alle Skripte befinden sich in ./scripts/:

  • scrape_apify.py - Einmaliger Scrape, für <1000 Leads
  • scrape_apify_parallel.py - Paralleles Scraping, für 1000+ Leads
  • classify_leads_llm.py - LLM-basierte Lead-Klassifizierung
  • enrich_emails.py - E-Mail-Anreicherung über AnyMailFinder
  • update_sheet.py - Batch-Tabellenaktualisierung
  • read_sheet.py - Daten aus Google Sheets lesen

Ablauf

Kleine Scrapes (<1000 Leads)

  1. Test-Scrape

    python3 ./scripts/scrape_apify.py --query "BRANCHE" --location "STANDORT" --max_items 25 --no-email-filter --output .tmp/test_leads.json
    
  2. Verifizierung

    • Lese .tmp/test_leads.json
    • Prüfe, ob mindestens 20/25 (80%) Leads zur Branche passen
    • Bestanden: Fahre mit Schritt 3 fort
    • Nicht bestanden: Stoppe und fordere den Benutzer auf, die Suchbegriffe zu verfeinern
  3. Vollständiger Scrape

    python3 ./scripts/scrape_apify.py --query "BRANCHE" --location "STANDORT" --max_items GESAMTANZAHL --no-email-filter --output .tmp/leads.json
    
  4. [Optional] LLM-Klassifizierung (für komplexe Nischen)

    python3 ./scripts/classify_leads_llm.py .tmp/leads.json --classification_type product_saas --output .tmp/classified_leads.json
    
  5. In Google Sheet hochladen

    python3 ./scripts/update_sheet.py .tmp/leads.json --title "Leads - BRANCHE"
    
  6. Fehlende E-Mails anreichern

    python3 ./scripts/enrich_emails.py SHEET_URL
    

Große Scrapes (1000+ Leads)

  1. Test-Scrape (wie oben mit 25 Elementen)

  2. Paralleler vollständiger Scrape

    python3 ./scripts/scrape_apify_parallel.py \
      --query "BRANCHE" \
      --total_count 4000 \
      --location "Vereinigte Staaten" \
      --strategy regions \
      --no-email-filter
    

    Geografische Partitionierung erfolgt automatisch:

    • Vereinigte Staaten: 4-fach (Nordosten, Südosten, Mittlerer Westen, Westen)
    • EU/Europa: 4-fach (Westeuropa, Südeuropa, Nordeuropa, Osteuropa)
    • Großbritannien: 4-fach (SO-England, N-England, Schottland/Wales, SW-England)
    • Kanada: 4-fach (Ontario, Quebec, Westen, Atlantik)
    • Australien: 4-fach (NSW, VIC/TAS, QLD, WA/SA)
  3. Fahre mit den Schritten 4-6 aus den kleinen Scrapes fort

Ausgaben

Das EINZIGE Ergebnis ist die Google Sheet-URL. Lokale JSON-Dateien in .tmp/ sind temporäre Zwischenschritte.

Randfälle

  • Keine Leads gefunden: Fordere den Benutzer auf, die Suche zu erweitern
  • API-Fehler: Überprüfe die Anmeldeinformationen in .env
  • Niedrige Klassifizierungsqualität: Wenn >80% "unklar" sind, verbessere die Scrape-Keywords

Umgebung

Erforderlich in .env:

APIFY_API_TOKEN=dein_token
GOOGLE_APPLICATION_CREDENTIALS=Pfad/zur/credentials.json
ANTHROPIC_API_KEY=dein_key
ANYMAILFINDER_API_KEY=dein_key

Schema

Eingaben

NameTypErforderlichBeschreibung
industryZeichenketteJaZielbranche (z.B. 'Klempner', 'Software-Agenturen')
locationZeichenketteJaZielstandort (z.B. 'Texas', 'Vereinigte Staaten')
total_countGanzzahlJaGesamtzahl der gewünschten Leads
classification_typeZeichenketteNeinLLM-Klassifizierungstyp (z.B. 'product_saas')

Ausgaben

NameTypBeschreibung
sheet_urlZeichenketteGoogle Sheet-URL mit gescrapten Leads
lead_countGanzzahlAnzahl der gefundenen Leads

Anmeldeinformationen

NameQuelle
APIFY_API_TOKEN.env
GOOGLE_APPLICATION_CREDENTIALS.env
ANTHROPIC_API_KEY.env
ANYMAILFINDER_API_KEY.env

Komponierbar mit

Fähigkeiten, die gut mit dieser zusammenarbeiten: classify-leads, casualize-names, instantly-campaigns, onboarding-kickoff

Kosten

$0.01-0.02 pro Lead + $0.30/1K für die Klassifizierung

Individual skills in this repo

This repo contains 10 individual skills — each has its own dedicated page.

aiagentwithdhruv/skills

Add new Modal webhooks for event-driven execution. Use when user asks to create a webhook, add an endpoint, or set up event triggers.

aiagentwithdhruv/skills

Answer Euron Gen AI Bootcamp doubts instantly. Covers Euri API setup across all frameworks (Python, LangChain, OpenAI SDK, TypeScript, n8n, curl), MCP server setup, common errors, model recommendations, and token limits. Use when someone in the bootcamp asks a question.

aiagentwithdhruv/skills

Manage emails across multiple Gmail accounts with unified tooling. Use when user asks to check email, read inbox, label emails, archive messages, or manage Gmail across accounts.

aiagentwithdhruv/skills

Auto-label Gmail emails into Action Required, Waiting On, and Reference categories. Use when user asks to label emails, triage inbox, categorize emails, or organize Gmail.

aiagentwithdhruv/skills

Scrape Google Maps for B2B leads with deep website enrichment and contact extraction. Use when user asks to find local businesses, scrape Google Maps, generate contractor lists, or build local service business databases.

aiagentwithdhruv/skills

Run Claude orchestrator locally with Cloudflare tunneling. Use when user asks to run locally, start local server, or test webhooks locally.

aiagentwithdhruv/skills

MCP server for AI-powered macOS control — apps, display, audio, files, screenshots, clipboard

aiagentwithdhruv/skills

Deploy execution scripts to Modal cloud. Use when user asks to deploy to Modal, push code to cloud, or update Modal functions.

aiagentwithdhruv/skills

Query Skool community content using RAG pipeline with vector search. Use when user asks to search Skool knowledge, find community answers, or query Skool content.

aiagentwithdhruv/skills

Scrape Upwork jobs and generate personalized proposals with cover letters. Use when user asks to find Upwork jobs, create Upwork proposals, or apply to Upwork listings.

Verwandte Skills