Ein intelligenter Telegram-Bot, der automatisch potenzielle Kunden findet, deren Websites analysiert und qualifizierte Leads direkt an Notion sendet.
| Feature | Beschreibung |
|---|---|
| ๐ Multi-Source Scraping | Durchsucht Google Maps, Gelbe Seiten & Das รrtliche gleichzeitig |
| ๐ง Website-Analyse | Erkennt veraltete Designs, fehlendes SSL, mobiles Layout, Copyright-Jahre |
| ๐ Sofort-Benachrichtigung | Jeder gefundene Lead wird sofort per Telegram-Nachricht gemeldet |
| ๐ Notion-Sync | Leads landen automatisch in deiner Notion-Datenbank |
| ๐ก๏ธ Duplikat-Schutz | Prรผft vor dem Speichern, ob der Lead bereits in Notion existiert |
| ๐ Web-Dashboard | รbersicht aller Leads unter http://localhost:8000 |
| ๐ Background-Modus | Unsichtbarer Headless-Betrieb via --background |
| ๐ Hunt-Mode | Scannt automatisch 20 Handwerker-Branchen in einer Stadt |
โโโโโโโโโโโโโโโ Telegram โโโโโโโโโโโโโโโ
โ Dein Handy โ โโโโโโโโโโโโโ> โ bot.py โ
โ (Telegram) โ <โโโโโโโโโโโโโ โ (Commands) โ
โโโโโโโโโโโโโโโ โโโโโโโโฌโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโ
โผ โผ โผ
โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ
โ Google Maps โ โGelbe Seiten โ โDas รrtliche โ
โ (Playwright)โ โ (Base64-Fix)โ โ (Playwright)โ
โโโโโโโโฌโโโโโโโโ โโโโโโโโฌโโโโโโโโ โโโโโโโโฌโโโโโโโโ
โ โ โ
โโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโ
โผ
โโโโโโโโโโโโโโโโโโโ
โ Website-Analyse โ
โ (SSL, Viewport, โ
โ Design, Email) โ
โโโโโโโโโโฌโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโ
โผ โผ โผ
โโโโโโโโโโโโโโ โโโโโโโโโโโโโโ โโโโโโโโโโโโโโ
โ Telegram โ โ Notion โ โ CSV โ
โ (Sofort) โ โ (API) โ โ (Backup) โ
โโโโโโโโโโโโโโ โโโโโโโโโโโโโโ โโโโโโโโโโโโโโ
- Python 3.12+
- Playwright Browser (Chromium)
- Telegram Bot Token (via @BotFather)
- Notion Integration (optional, fรผr Sync)
git clone <repository-url>
cd LeadBotpython3 -m venv .venv
source .venv/bin/activate # Linux/Mac
# oder: .venv\Scripts\activate # Windowspip install -r requirements.txt
playwright install chromiumcp .env.example .env
nano .env # oder dein EditorErforderliche Variablen:
| Variable | Beschreibung | Woher? |
|---|---|---|
TELEGRAM_BOT_TOKEN |
Token deines Telegram-Bots | @BotFather |
AUTHORIZED_USER_ID |
Deine Telegram User-ID | @userinfobot |
Optionale Variablen (Notion-Sync):
| Variable | Beschreibung |
|---|---|
NOTION_API_KEY |
Internal Integration Token |
NOTION_DATABASE_ID |
ID deiner Notion-Datenbank |
โ ๏ธ Sicherheitshinweis: Die.env-Datei enthรคlt sensible Daten und ist in.gitignoreaufgefรผhrt. Gib deine Tokens niemals รถffentlich preis!
python3 run.pyรffnet ein Chromium-Fenster fรผr den Browser-Scraper. Ideal fรผr:
- Erstes Setup
- Captcha-Lรถsung
- Debugging
python3 run.py --background
# oder kurz:
python3 run.py -bLรคuft komplett im Hintergrund ohne Browser-Fenster. Perfekt fรผr:
- 24/7-Server
- Automatisierte Hunts
- Headless-Umgebungen
python3 bot.py
# oder im Hintergrund:
python3 bot.py --background| Command | Beschreibung | Beispiel |
|---|---|---|
/start |
Willkommensnachricht & Hilfe | /start |
/find |
Gezielte Suche nach Branche & Stadt | /find dachdecker berlin |
/hunt |
Automatischer 20-Branchen-Hunt | /hunt mรผnchen |
/radius |
Suchradius รคndern (km) | /radius 25 |
/stats |
Lead-Statistiken anzeigen | /stats |
/best |
Lead mit den meisten Problemen | /best |
Der Bot versteht auch natรผrliche Anfragen:
- "Suche Elektriker in Hamburg"
- "Hunt Stuttgart"
- "Wie viele Leads heute?"
- "Bester Lead"
Erstelle eine Notion-Datenbank mit diesen exakten Spaltennamen:
| Spalte | Typ | Beschreibung |
|---|---|---|
| Firmenname | Title |
Name des Unternehmens |
| Name | Rich Text |
Ansprechpartner aus Impressum |
Email |
Gefundene E-Mail-Adresse | |
| Telefon | Phone Number |
Telefonnummer |
| Probleme | Rich Text |
Analyse-Ergebnisse (SSL, Viewport, etc.) |
| Website | URL |
Firmenwebsite |
| Status | Status |
Automatisch auf "Neu" gesetzt |
Hinweis: Der Bot prรผft vor jedem Upload, ob der Lead bereits existiert (Duplikat-Schutz via Firmenname + Website).
LeadBot/
โโโ bot.py # Telegram-Bot mit Commands & Logik
โโโ scraper.py # Playwright-Scraper (Maps, Gelbe Seiten, รrtliche)
โโโ notion_db.py # Notion-API-Integration & Duplikat-Check
โโโ web.py # FastAPI-Dashboard (localhost:8000)
โโโ run.py # Prozess-Manager (Bot + Webserver)
โโโ requirements.txt # Python-Abhรคngigkeiten
โโโ .env.example # Beispiel-Konfiguration (ohne echte Tokens!)
โโโ .gitignore # Ausgeschlossene Dateien
โโโ db/ # TinyDB-Datenbank (lokal, .gitignore)
โโโ screenshots/ # Website-Screenshots (.gitignore)
โโโ browser_session/ # Playwright-Cookies & Cache (.gitignore)
โโโ backup_leads.csv # Automatisches CSV-Backup (.gitignore)
Standardmรครig sucht der Bot im Umkreis von 10 km. รndere ihn via Telegram:
/radius 50
Der Wert wird in db/radius.json persistiert.
Wenn Google ein Captcha anzeigt:
- Der Bot pausiert automatisch
- Du erhรคltst eine Telegram-Nachricht: "
โ ๏ธ CAPTCHA! Bitte am PC lรถsen." - Lรถse das Captcha im Browser-Fenster
- Drรผcke Enter im Terminal, um fortzufahren
Im Background-Modus (
--background) ist die Captcha-Lรถsung รผber AnyDesk/VNC empfohlen.
| Technologie | Verwendung |
|---|---|
| Python 3.12+ | Kernsprache |
| Playwright | Browser-Automatisierung (Chromium) |
| python-telegram-bot | Telegram-Bot-Framework |
| FastAPI | Web-Dashboard |
| TinyDB | Lokale JSON-Datenbank |
| Notion Client | Notion-API-Integration |
| BeautifulSoup4 | HTML-Parsing & Website-Analyse |
- Keine Secrets im Repo:
.env,*.csv, Screenshots und Session-Daten sind in.gitignore - Duplikat-Schutz: Verhindert doppelte Eintrรคge in Notion
- Autorisierung: Nur deine Telegram User-ID kann Commands ausfรผhren
- Tab-Isolierung: Jeder Website-Scan lรคuft in einem separaten Browser-Tab
Bei Problemen oder Fragen:
- Prรผfe die Logs im Terminal
- Verifiziere deine
.env-Konfiguration - Stelle sicher, dass Playwright installiert ist:
playwright install chromium
Built with caffeine and loveโ