Das Web quillt über vor Daten, und niemand will sich ernsthaft durch tausend Produktlisten oder Stellenanzeigen klicken, kopieren und einfügen. Genau deshalb ist Web-Scraping für Business-Anwender in Vertrieb, Operations, E-Commerce und darüber hinaus zu einer unverzichtbaren Fähigkeit geworden. Python hat sich mit seiner leicht verständlichen Syntax und seinen starken Bibliotheken zur bevorzugten Sprache für den Bau von Web-Scrapern entwickelt. In einer ScrapingFish-Umfrage unter Web-Scraping-Praktikern aus dem Jahr 2023 lag Python mit rund 62 % klar vor jeder anderen Sprache — und dieser Vorsprung hat sich seitdem offenbar nicht verringert.
Allerdings: So leistungsfähig Python-Scraping auch ist, für Einsteiger kann es zunächst abschreckend wirken, und selbst erfahrene Profis stoßen bei dynamischen Websites, Anti-Bot-Schutz und unübersichtlichen Daten an ihre Grenzen. Deshalb habe ich diesen Schritt-für-Schritt-Leitfaden zusammengestellt. Wir beginnen ganz von vorn, gehen ein praktisches Python-Web-Scraper-Beispiel durch und sehen uns an, wie Sie Python mit KI-gestützten Tools wie Thunderbit kombinieren, um sich viel manuelle Arbeit zu sparen. Ob Sie Leads automatisieren, Konkurrenzpreise überwachen oder Webdaten einfach in eine Tabelle bringen möchten: Hier finden Sie direkt umsetzbare Schritte und ein paar hart erarbeitete Tipps.
Python-Web-Scraping 101: So richten Sie alles von Grund auf ein
Was ist Data Scraping und wie funktioniert es 2026? Get Started Free
Zunächst die Grundlagen. Web-Scraping bezeichnet das automatisierte Erfassen von Daten aus Websites. Statt Informationen manuell zu kopieren, besucht ein Scraper eine Seite, liest das HTML und zieht die Teile heraus, die Sie brauchen — etwa Produktpreise, Kontaktdaten oder Bewertungen. Für Business-Anwender heißt das: Echtzeitdaten für Vertriebsleads, Preisbeobachtung oder Marktforschung direkt zur Hand (browsercat.com).
Schritt 1: Python installieren
Zuerst brauchen Sie Python 3. Die meisten laden die neueste Version von der offiziellen Python-Website herunter. Unter Windows starten Sie das Installationsprogramm und aktivieren unbedingt „Add Python to PATH“. Auf dem Mac können Sie Homebrew mit brew install python nutzen oder direkt herunterladen. Öffnen Sie nach der Installation Ihr Terminal (oder die Eingabeaufforderung) und führen Sie aus:
python --version
oder
python3 --version
Wenn etwas wie Python 3.14.5 erscheint (oder irgendeine 3.x-Version), sind Sie startklar.
Schritt 2: Eine virtuelle Umgebung einrichten
Eine virtuelle Umgebung hält die Abhängigkeiten Ihres Projekts sauber und verhindert Konflikte mit anderen Python-Projekten. Führen Sie in Ihrem Projektordner aus:
# unter macOS/Linux
python3 -m venv .venv
# unter Windows
py -m venv .venv
Aktivieren Sie sie mit:
- macOS/Linux:
source .venv/bin/activate - Windows:
.venv\Scripts\activate
Von nun an werden alle installierten Pakete nur innerhalb dieses Projekts gespeichert (Python Packaging Guide).
Schritt 3: Wichtige Bibliotheken installieren
Sie brauchen einige essenzielle Pakete:
- Requests: Zum Abrufen von Webseiten.
- BeautifulSoup (bs4): Zum Parsen von HTML.
- Scrapy: Für fortgeschrittenes Scraping in größerem Umfang.
Installieren Sie sie mit:
pip install requests beautifulsoup4 scrapy
- Requests macht HTTP-Aufrufe fast so einfach wie das Lesen einer Datei.
- BeautifulSoup hilft Ihnen dabei, Daten im HTML zu finden und zu extrahieren.
- Scrapy ist ein umfangreiches Framework, um viele Seiten zu crawlen, Fehler zu behandeln und Daten zu exportieren.
Für die meisten Einsteiger ist der Start mit Requests + BeautifulSoup ideal. Scrapy lohnt sich, sobald Sie skalieren möchten.
Schritt 4: Ihren Projektordner anlegen
Bringen Sie Ordnung in Ihre Dateien. Legen Sie einen Ordner für Ihr Projekt an und bewahren Sie dort Ihre Skripte, Datendateien und die virtuelle Umgebung auf. Diese Struktur zahlt sich später aus.
python web scraper example: Grundlegendes Skript und Code-Struktur
Nun zu einem einfachen Scraper. Wir rufen eine Webseite ab, parsen sie und extrahieren einige Daten. Hier ist ein minimales, kommentiertes Beispiel für das Scraping von example.com:
import requests
from bs4 import BeautifulSoup
URL = "https://example.com"
response = requests.get(URL)
response.raise_for_status() # Gibt einen Fehler aus, wenn der Status nicht 200 OK ist
soup = BeautifulSoup(response.text, "html.parser")
# Alle Absatz-Tags finden
paragraphs = soup.find_all('p')
for idx, p in enumerate(paragraphs, start=1):
print(f"Absatz {idx}: {p.get_text()}")
Was passiert hier?
- Wir importieren unsere Bibliotheken.
- Wir laden die Seite mit
requests.get. - Wir parsen das HTML mit BeautifulSoup.
- Wir finden alle
<p>-Tags und geben ihren Text aus.
Häufige Stolperfallen:
response.status_codenicht prüfen (immer auf 200 OK achten)..get_text()auf einemNone-Objekt aufrufen (wenn das Element nicht gefunden wurde).- Die virtuelle Umgebung nicht aktivieren (dann können Imports fehlschlagen).
Diese Struktur — importieren, abrufen, parsen, extrahieren, ausgeben — ist das Grundgerüst der meisten Python-Scraper.
Mit Python Webseiten scrapen: Schritt für Schritt
Gehen wir den Ablauf für eine echte Scraping-Aufgabe Schritt für Schritt durch.
1. Die Website untersuchen
Öffnen Sie Ihren Browser, klicken Sie mit der rechten Maustaste auf die gewünschten Daten und wählen Sie „Untersuchen“. So öffnen sich die Entwicklertools und Sie sehen die HTML-Struktur. Achten Sie auf eindeutige Tags, Klassen oder IDs, die Ihre Zieldaten kennzeichnen (realpython.com).
2. Die Seite abrufen
Nutzen Sie Requests, um das HTML abzurufen:
headers = {"User-Agent": "Mozilla/5.0"}
response = requests.get(URL, headers=headers)
response.raise_for_status()
Ein User-Agent hilft dabei, einfache Anti-Bot-Sperren zu umgehen.
3. Das HTML parsen
soup = BeautifulSoup(response.text, "html.parser")
4. Daten finden und extrahieren
Angenommen, Sie scrapen Stellenanzeigen, die jeweils in einem <div class="job-card"> stehen:
job_cards = soup.find_all('div', class_='job-card')
for card in job_cards:
title = card.find('h2', class_='title').get_text(strip=True)
company = card.find('h3', class_='company').get_text(strip=True)
print(title, company)
Für komplexere Abfragen können Sie .find(), .find_all() oder .select() mit CSS-Selektoren verwenden.
5. Mehrere Elemente verarbeiten (Listen)
Iterieren Sie durch die Liste der Container (wie Produktlisten, Job-Karten usw.) und extrahieren Sie die benötigten Felder. Speichern Sie sie in einer Liste von Dictionaries, damit der Export später einfach ist.
6. Fehlersuche
- Wenn Sie leere Ergebnisse erhalten, prüfen Sie Ihre Selektoren — vielleicht hat sich der Klassenname geändert oder der Inhalt wird per JavaScript geladen.
- Geben Sie
response.text[:500]aus, um zu sehen, ob Sie das erwartete HTML erhalten.
python web scraper example: Datenspeicherung und Export
Sobald Sie Ihre Daten haben, möchten Sie sie speichern. Hier die gängigsten Optionen:
In der Konsole ausgeben
Gut für schnelle Prüfungen, aber nicht für echte Projekte.
Als CSV schreiben
import csv
data = [
{"Name": "Alice", "Age": 25},
{"Name": "Bob", "Age": 30},
]
with open("output.csv", "w", newline="", encoding="utf-8") as f:
writer = csv.DictWriter(f, fieldnames=["Name", "Age"])
writer.writeheader()
writer.writerows(data)
Nach Excel exportieren
Wenn pandas und openpyxl installiert sind:
import pandas as pd
df = pd.DataFrame(data)
df.to_excel("output.xlsx", index=False)
In einer Datenbank speichern
Für leichte Anforderungen ist SQLite in Python bereits enthalten:
import sqlite3
conn = sqlite3.connect("scraped_data.db")
cursor = conn.cursor()
cursor.execute("CREATE TABLE IF NOT EXISTS people (name TEXT, age INTEGER)")
for row in data:
cursor.execute("INSERT INTO people VALUES (?, ?)", (row["Name"], row["Age"]))
conn.commit()
conn.close()
Wann nutzt man was?
- CSV: Am besten für Tabellenkalkulationen und einfaches Teilen.
- Excel: Für formatierte Berichte und mehrere Tabellenblätter.
- Datenbank: Für große oder laufende Projekte.
Verwenden Sie immer encoding="utf-8", um merkwürdige Probleme bei der Zeichendarstellung zu vermeiden (decodo.com).
Thunderbit und Python: So bringen Sie Ihren Scraping-Workflow auf das nächste Level
Kommen wir zu Thunderbit, der KI-gestützten Web-Scraper-Chrome-Erweiterung, die den Arbeitsalltag für Business-Anwender verändert.
Was macht Thunderbit anders?
- KI-Felder vorschlagen: Thunderbits KI scannt die Seite und empfiehlt, welche Datenspalten extrahiert werden sollen — kein Durchforsten von HTML und kein Schreiben von Selektoren nötig.
- Point-and-Click-Workflow: Einfach die Erweiterung öffnen, die KI Felder vorschlagen lassen, auf „Scrapen“ klicken — fertig.
- Subpage-Scraping: Thunderbit kann automatisch Detailseiten besuchen (z. B. Produkt- oder Profilseiten) und Ihr Datenset mit zusätzlichen Infos anreichern.
- Überall exportieren: Laden Sie Ihre Daten als CSV oder Excel herunter oder exportieren Sie direkt nach Google Sheets, Notion oder Airtable (Thunderbit Export).
Thunderbit AI Web Scraper kostenlos testen
Wie ergänzt Thunderbit Python?
Stellen Sie sich vor, Sie scrapen eine komplexe E-Commerce-Website mit vielen JavaScript-Inhalten und Login-Anforderungen. Klassische Python-Skripte tun sich damit möglicherweise schwer, aber Thunderbit — direkt im Browser — meistert solche Fälle mühelos. Sobald die Daten extrahiert sind, exportieren Sie sie und nutzen Python für weitere Analysen, Berichte oder Automatisierungen.
Beispielszenario:
- Nutzen Sie Thunderbit, um Produktlisten einschließlich Bilder, Preise und Bewertungen von einer dynamischen Website zu scrapen.
- Exportieren Sie die Daten als CSV.
- Verwenden Sie Python, um Trends zu analysieren, mit anderen Datensätzen zu kombinieren oder Benachrichtigungen zu automatisieren.
Diese Kombination hilft Ihnen dabei, selbst die schwierigsten Scraping-Aufgaben zu lösen, ganz unabhängig von Ihrem Programmierlevel.
Genauigkeit und Stabilität Ihres Python-Web-Scrapers sicherstellen
Beim Web-Scraping geht es nicht nur darum, Daten zu holen — sondern die richtigen Daten zuverlässig zu holen. So halten Sie Ihre Scraper am Laufen:
1. Auf Website-Änderungen reagieren
Websites aktualisieren ihr HTML ständig. Schreiben Sie Ihre Selektoren so robust wie möglich — bevorzugen Sie eindeutige IDs oder stabile Klassennamen statt fragiler Tag-Positionen.
2. Fehlerbehandlung nutzen
Kapseln Sie Ihre Requests und Parsing-Logik in try/except-Blöcke:
import time
for attempt in range(3):
try:
response = requests.get(url, timeout=10)
response.raise_for_status()
break
except Exception as e:
if attempt < 2:
time.sleep(5)
else:
print(f"Nach 3 Versuchen fehlgeschlagen: {e}")
3. User-Agent rotieren und Proxys verwenden
Viele Websites blockieren Skripte, die wie Bots aussehen. Variieren Sie Ihre User-Agent-Zeichenfolge und nutzen Sie bei größerem Scraping Proxys, um IP-Sperren zu vermeiden (scrapingfish.com).
4. robots.txt respektieren und ethisch handeln
Prüfen Sie immer die robots.txt-Datei und die Nutzungsbedingungen einer Website. Scrapen Sie nur öffentliche Daten, vermeiden Sie personenbezogene Informationen und überlasten Sie keine Server (rayobyte.com).
5. Protokollieren und überwachen
Nutzen Sie das logging-Modul von Python, um Fehler und Erfolge nachzuverfolgen. Wenn Ihr Scraper nach Zeitplan läuft, richten Sie Warnungen für Fehler oder Tage mit null Ergebnissen ein.
Wie Thunderbits KI-Funktionen Python-Web-Scraping verbessern
Bei Thunderbit geht es nicht nur ums Scraping — sondern darum, den gesamten Prozess smarter und schneller zu machen.
KI-gestützte Datenstruktur
Thunderbits KI kann sofort vorschlagen, welche Felder extrahiert werden sollen, und erspart Ihnen so das Rätselraten bei der HTML-Inspektion und beim Schreiben von Selektoren. Auf einer Produktseite erkennt sie beispielsweise automatisch „Produktname“, „Preis“, „Bild-URL“ und mehr.
Unterseiten und Paginierung verarbeiten
Thunderbits KI erkennt, wenn es Detailseiten oder mehrere Ergebnis-Seiten gibt, und kann alle scrapen — ganz ohne zusätzlichen Programmieraufwand. Das ist ein echter Rettungsanker für E-Commerce-, Immobilien- oder Lead-Generation-Aufgaben.
KI-Datenbereinigung und -Anreicherung
Möchten Sie Daten beim Scrapen übersetzen, zusammenfassen oder kategorisieren? Mit Thunderbit können Sie für jedes Feld KI-Prompts hinzufügen, sodass Sie zum Beispiel Bewertungen als „Positiv“ oder „Negativ“ kennzeichnen oder nur den numerischen Teil eines Preisstrings extrahieren können.
Workflow-Beispiel
- Nutzen Sie Thunderbit, um Ihre Daten zu scrapen und zu strukturieren (mit KI-gestützten Feldvorschlägen).
- Exportieren Sie nach CSV oder Google Sheets.
- Verwenden Sie Python, um zu analysieren, zu visualisieren oder Folgeaktionen zu automatisieren.
Dieser Workflow ist perfekt für Teams, in denen nicht alle programmieren — Thunderbit übernimmt das Scraping, Python die Schwerstarbeit.
python web scraper example: Fortgeschrittene Tipps und häufige Probleme
Für den nächsten Schritt hier ein paar Profi-Tipps:
Dynamische Inhalte scrapen
Viele moderne Websites laden Daten per JavaScript. Wenn Requests + BeautifulSoup leere oder unvollständige Daten liefern, versuchen Sie Folgendes:
- Selenium oder Playwright: Automatisieren Sie einen echten Browser, um die Seite zu rendern, und extrahieren Sie dann das HTML.
- Nach APIs suchen: Manchmal werden Daten über Hintergrund-API-Aufrufe geladen (oft mit JSON als Antwort). Nutzen Sie den Network-Tab Ihres Browsers, um diese Endpunkte zu finden — sie lassen sich viel einfacher scrapen!
Paginierung behandeln
Laufen Sie über mehrere Seiten, indem Sie den URL-Parameter ändern (z. B. ?page=2). Oder nutzen Sie BeautifulSoup, um den „Weiter“-Link zu finden und ihm zu folgen, bis es keine weiteren Seiten mehr gibt.
Scrapes planen
Nutzen Sie die schedule-Bibliothek von Python oder einen Cron-Job, um Ihren Scraper automatisch auszuführen. Oder verwenden Sie Thunderbts integrierte Planungsfunktion für eine No-Code-Lösung.
Häufige Probleme
- CAPTCHAs: Verlangsamen Sie Ihre Requests, nutzen Sie Proxys oder setzen Sie auf Lösungen mit menschlicher Beteiligung.
- Kodierungsprobleme: Geben Sie beim Schreiben von Dateien immer
encoding="utf-8"an. - IP-Sperren: Rotieren Sie Proxys, variieren Sie den User-Agent und halten Sie sich an Rate Limits.
Fazit und wichtigste Erkenntnisse
So scrapen Sie jede Website mit KI Get Started Free
Web-Scraping mit Python zu meistern, muss nicht überfordern. Starten Sie mit den Grundlagen:
- Richten Sie Ihre Umgebung und die wichtigsten Bibliotheken ein.
- Untersuchen Sie Ihre Zielwebsite und planen Sie Ihre Selektoren.
- Schreiben Sie ein einfaches Skript zum Abrufen, Parsen und Extrahieren von Daten.
- Exportieren Sie Ihre Ergebnisse in einem Format, das zu Ihren geschäftlichen Anforderungen passt.
Wenn Sie wachsen, kombinieren Sie Python mit KI-gestützten Tools wie Thunderbit, um komplexe, dynamische oder volumenstarke Scraping-Aufgaben zu bewältigen. Thunderbits KI-Funktionen — wie Feldvorschläge, Subpage-Scraping und Sofort-Exporte — sparen Stunden manueller Arbeit und helfen auch Nicht-Programmierern, mitzumachen.
Denken Sie daran: Die besten Scraper sind zuverlässig, ethisch und auf das Endziel ausgerichtet. Ob im Vertrieb, im E-Commerce oder einfach aus Interesse an Daten: Web-Scraping eröffnet Ihnen viele neue Erkenntnisse. Fangen Sie mit einem kleinen Projekt an und bauen Sie es Schritt für Schritt aus.
Möchten Sie tiefer einsteigen? Schauen Sie im Thunderbit Blog nach weiteren Anleitungen oder testen Sie die Thunderbit Chrome-Erweiterung, um KI-gestütztes Scraping in Aktion zu sehen.
Thunderbit Chrome-Erweiterung kostenlos testen
FAQs
1. Wie ist der einfachste Weg, mit Python ins Web-Scraping einzusteigen?
Installieren Sie zuerst Python 3 und verwenden Sie dann die Bibliotheken Requests und BeautifulSoup, um Webseiten abzurufen und zu parsen. Beginnen Sie mit einfachen Websites und arbeiten Sie sich mit wachsender Sicherheit zu komplexeren Seiten vor.
2. Wie gehe ich mit Websites um, die Daten per JavaScript laden?
Für JavaScript-lastige Websites verwenden Sie Browser-Automatisierungstools wie Selenium oder Playwright, oder suchen Sie im Network-Tab Ihres Browsers nach Hintergrund-API-Aufrufen, die strukturierte Daten wie JSON zurückgeben.
3. Wie exportiere ich gescrapte Daten am besten für den geschäftlichen Einsatz?
CSV ist das universellste Format (öffnet sich in Excel, Google Sheets usw.), aber Sie können auch nach Excel, JSON oder sogar in Datenbanken wie SQLite exportieren. Thunderbit unterstützt außerdem den direkten Export nach Google Sheets, Notion und Airtable.
4. Wie kann ich beim Scraping Sperren vermeiden?
Rotieren Sie Ihren User-Agent, nutzen Sie Proxys bei großem Umfang, halten Sie sich an Rate Limits und prüfen Sie immer die robots.txt der Website. Vermeiden Sie das Scrapen personenbezogener oder sensibler Daten.
5. Wie macht Thunderbit Web-Scraping für Nicht-Programmierer einfacher?
Thunderbit nutzt KI, um Datenfelder vorzuschlagen, Unterseiten und Paginierung zu verarbeiten und strukturierte Daten mit nur wenigen Klicks zu exportieren — ganz ohne Programmierung. Es ist ideal für Business-Anwender, die schnelle und zuverlässige Ergebnisse ohne technischen Aufwand wollen.
Wenn Sie Ihre Datenerfassung automatisieren möchten, testen Sie Thunderbit kostenlos – die KI nimmt Ihnen die Handarbeit im Web-Scraping-Workflow ab.
KI-Web-Scraper testen Get Started Free
Mehr erfahren
- Umfassender Leitfaden zum Web-Scraping mit Python: Schritt für Schritt
- Python-Scraping-Tutorial für Anfänger: Schritt für Schritt
- Schritt-für-Schritt-Anleitung: Web-Scraping in Python
- Wie man mit Python Daten scrapt: Tutorial für Anfänger
- Wie man einen Web-Scraper mit Python schreibt: Von Anfang bis Ende


