Tony Wang6 Min. LesezeitIMDb scrapen in 2026 (API & Python)
IMDb 2026 scrapen — Titles, Cast und Crew, Ratings, Reviews und Awards — per DIY, No-Code oder strukturierter API, plus die rechtliche Lage bei IMDb.
Am schnellsten scrapst du IMDb 2026, indem du eine strukturierte API aufrufst, die normalisiertes JSON zurückgibt — Title-Details, Cast und Crew, Ratings, User-Reviews und Awards — statt IMDbs serverseitig gerenderte Seiten selbst zu parsen. IMDb ist die Standard-Datenbank des Webs für Filme und TV, hat aber keine offene öffentliche API, und ihre Bedingungen schränken automatisierten Zugriff ausdrücklicher ein als die meisten Seiten in dieser Serie. Dieser Guide zeigt dir alle drei Ansätze: was jeder liefert, wo jeder scheitert und die rechtliche Realität von Anfang an.
Warum IMDb scrapen?
IMDbs Title- und Personendaten verankern die meisten Film-/TV-Produkte — und genau das treibt an:
- Katalog-Anreicherung — kanonische Title-, Cast-, Rating- und Genre-Daten an eine Media-App, Watchlist oder ein internes Dataset anhängen.
- Recommendation & Discovery — „ähnliche Titles"- oder Genre-/Ära-basierte Empfehlungsfeatures bauen.
- Rezeptions- und Sentiment-Recherche — verfolgen, wie sich Rating und Review-Tonalität eines Titles über die Zeit entwickeln.
- Talent- und Filmografie-Tracking — das Werk und die Award-Historie eines Regisseurs oder einer Schauspielerin verfolgen.
- Streaming-Vergleichs-Recherche — Title-/Rating-Daten mit wo ein Title tatsächlich verfügbar ist verbinden, um zu sehen, was gefeiert wird versus was einfach zu schauen ist.
Ist es legal, IMDb zu scrapen?
Option 1: DIY in Python (und warum das scheitert)
IMDbs Seiten sind aus einem eingebetteten JSON-Blob serverseitig gerendert statt aus sauberem semantischem HTML, deshalb parst ein DIY-Scraper diesen Blob aus der Seite:
import requests
from bs4 import BeautifulSoup
resp = requests.get(
"https://www.imdb.com/title/tt1375666/",
headers={"User-Agent": "Mozilla/5.0 (compatible; research-bot/1.0)"},
)
soup = BeautifulSoup(resp.text, "html.parser")
# Title, rating, and genres live inside a __NEXT_DATA__ / structured-data
# JSON blob, not selectable markup — you parse JSON out of a <script> tag
Es funktioniert in der Demo und geht dann kaputt:
- Die ToS ist explizit — und sie wird durchgesetzt. Anders als bei einigen Plattformen in dieser Serie schränken IMDbs Conditions of Use und
robots.txtnicht nur ein Login-geschütztes Feature ein — sie nennen Data Mining und Screen Scraping direkt, sodass hier ein reales Risiko beginnt, kein rein theoretisches. - Kein stabiles Markup. Die Seite ist Next.js-gerendert, mit Daten als JSON in einem Script-Tag eingebettet; die Struktur verschiebt sich mit Redesigns und A/B-Tests und bricht deinen Parser ohne Vorwarnung.
- Anti-Bot in Amazon-Größenordnung. IMDb steckt hinter Amazon-Grade-Infrastruktur — Rechenzentrums-IPs und naive Clients werden schnell rate-limitiert oder blockiert.
- Alles paginiert getrennt. Vollständiger Cast und Crew, Reviews, Episoden nach Season und Awards leben jeweils auf ihrer eigenen paginierten Unterseite — ein einziger Seitenaufruf liefert dir nie einen ganzen Title.
Option 2: No-Code-Tools und kostenlose Datasets
IMDb veröffentlicht eigene Non-Commercial Datasets — täglich aktualisierte TSV-Dateien unter datasets.imdbws.com mit Titles, Namen, Ratings und Crew. Sie sind der ehrliche erste Anlaufpunkt für Offline-, persönliche Batch-Arbeit, aber die Lizenz ist nur persönlich und nicht-kommerziell, und die Dateien lassen Plot-Zusammenfassungen, Reviews und Bilder komplett aus — alles Kommerzielle oder was diese Felder braucht, muss also woanders her. Marktplatz-Scraper-Actors füllen einen Teil dieser Lücke für einmalige Abzüge, aber in einer Pipeline sind sie umständlich und tragen dasselbe ToS-Risiko wie DIY.
Option 3: Eine strukturierte IMDb-API
Für einen wiederholbaren, permission-scoped Workflow liefert eine IMDb scraping API normalisiertes JSON, ohne dass du Seiten-Parsing pflegen musst. Suche einen Title oder eine Person:
curl "https://api.crawlora.net/api/v1/imdb/search?query=inception" \
-H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"query": "inception",
"limit": 10,
"results": [
{ "id": "tt1375666", "title": "Inception", "url": "https://www.imdb.com/title/tt1375666/", "year": "2010" }
]
}
}
Löse dann die id auf und hole in Python Detail, Credits und Reviews:
import requests
h = {"x-api-key": "YOUR_API_KEY"}
base = "https://api.crawlora.net/api/v1/imdb"
hits = requests.get(f"{base}/search", headers=h, params={"query": "inception"}).json()["data"]["results"]
title_id = hits[0]["id"]
title = requests.get(f"{base}/title", headers=h, params={"id": title_id}).json()["data"]
credits = requests.get(f"{base}/title/credits", headers=h, params={"id": title_id}).json()["data"]
reviews = requests.get(f"{base}/title/reviews", headers=h, params={"id": title_id, "limit": 20}).json()["data"]
Title-Details sind normalisiertes JSON (echte Felder — prüfe die docs):
{
"code": 200,
"msg": "OK",
"data": {
"id": "tt1375666",
"title": "Inception",
"year": "2010",
"runtime_minutes": 148,
"genres": ["Action", "Adventure", "Sci-Fi"],
"rating_value": 8.8,
"public_page_derived": true
}
}
Credits kommen nach Section zurück (Cast, Directed by, Writing Credits, …), jede Zeile trägt name, url und — bei Cast — character:
{
"data": {
"id": "tt1375666",
"sections": [
{ "name": "Cast", "slug": "cast", "credits": [
{ "name": "Leonardo DiCaprio", "url": "https://www.imdb.com/name/nm0000138/", "character": "Dom Cobb" }
] }
]
}
}
Personen funktionieren genauso: /imdb/name per id (nm0634240) liefert Bio, Geburtsdaten, Berufe und Known-for-Titles; /imdb/name/credits liefert die Filmografie. Awards (/imdb/title/awards), Episoden nach Season (/imdb/title/episodes), Keywords, technische Specs und der Parental Guide folgen alle demselben Muster: id rein, normalisiertes JSON raus. Speichere eine Zeile pro Title (oder pro Review, pro Credit) und lass es nach Zeitplan erneut laufen.
Was du sammeln kannst
Öffentliche Title- und Personen-Metadaten: Suchergebnisse (id, Title, url, Jahr); Title-Details (Rating, Genre, Laufzeit, Plot, Erscheinungsdatum, Cast, Regie); vollständiger Cast und Crew nach Section; User-Reviews (Title, Rating, Helpful-Votes, Spoiler-Flag); Awards; Episoden nach Season; Keywords, technische Specs, Parental Guide, Trivia, Goofs, Zitate und Drehorte; Company Credits; und Personenprofile (Bio, Geburtsdaten, Berufe, Known-for, Filmografie). Nur öffentliche Metadaten.
Grenzen und typische Herausforderungen
- Der rechtlich vorsichtigste Guide dieser Serie. IMDbs Bedingungen verbieten automatisierte Sammlung ausdrücklich — scope jedes Projekt auf öffentliche Referenzfelder, republiziere nie vollständige Review-Texte massenhaft, und hol dir für großangelegte kommerzielle Nutzung schriftliche Erlaubnis.
- Brüchiges, JSON-in-HTML-Markup. DIY-Parsing braucht ständige Pflege, weil sich IMDbs Rendering ändert.
- Anti-Bot in Amazon-Größenordnung. Rechne mit Rate-Limiting und Blocking bei naiven Requests oder Rechenzentrums-IPs.
- Fan-out pro Title. Reviews, Episoden und vollständige Credits paginieren jeweils getrennt, ein vollständiger Title-Datensatz bedeutet also mehrere Calls, nicht einen.
- Nur öffentliche Daten. Das sammelt, was IMDb bereits öffentlich zeigt — nie ein Weg um eine Login-Schranke herum oder ein Weg, ein konkurrierendes Katalog-Produkt zu bauen.
Wo das eingesetzt wird
- Katalog-Anreicherung — kanonische Title-, Cast- und Rating-Daten an ein Media-Produkt anhängen.
- Recommendation-Engines — „ähnliche Titles" und genre-basierte Discovery antreiben.
- Rezeptions-Recherche — Rating- und Review-Trends eines Titles über die Zeit verfolgen.
- Talent-Tracking — die Filmografie und Awards eines Regisseurs oder einer Schauspielerin verfolgen.
Sources
Leg los mit dem Sammeln
Probier es zuerst kostenlos aus: jage eine beliebige öffentliche URL durch den Free Web Scraper oder prüfe mit dem Anti-Bot Checker, ob eine Seite Bots blockiert — ohne Anmeldung.
Teste die Search-, Title- und Credits-Endpoints im Playground, sieh dir das Schema in den API docs an und wirf einen Blick aufs pricing. IMDb sagt dir, was ein Title ist, wer ihn gemacht hat und wie er bewertet ist; JustWatch sagt dir, wo er gerade tatsächlich streamt — kombiniere beide für eine vollständige „was ist gut und wo kann ich es schauen"-Pipeline. Neugierig, ob überhaupt jemand nach einem Title sucht? How to scrape Google Trends verbindet Rating-Daten mit echter Suchnachfrage. Auf der Rezeptions-Seite deckt how to scrape Trustpilot reviews dasselbe Rating-/Review-Muster für Unternehmen statt Titles ab. Siehe auch how to choose a web scraping API und is web scraping legal.
Häufig gestellte Fragen
Hat IMDb eine offizielle API?
Keine im Self-Service. IMDbs offizielles Angebot ist Enterprise-B2B-Datenlizenzierung (verfügbar über AWS Data Exchange, Berichten zufolge mit einem sechsstelligen Mindestbetrag), und die kostenlosen Non-Commercial Datasets sind Bulk-TSV-Dateien nur für persönliche, nicht-kommerzielle Nutzung, die Plot, Reviews und Bilder auslassen — eine strukturierte API ist der praktikable Weg für kommerzielle oder feldreiche Nutzung.
Ist es legal, IMDb zu scrapen?
IMDb ist strenger als die meisten Plattformen dieser Serie: Die Conditions of Use und die robots.txt verbieten Data Mining und Screen Scraping ausdrücklich ohne schriftliche Zustimmung. Behandle das nur als öffentliche Referenzdaten — Titles, gecredited Namen, aggregierte Ratings und den Review-Text, den IMDb selbst öffentlich anzeigt — republiziere nie vollständige Reviews massenhaft, und hol dir für großangelegte kommerzielle Nutzung schriftliche Erlaubnis von IMDbs Licensing-Team. Keine Rechtsberatung.
Wie komme ich an Cast und Crew eines Films oder einer Serie?
Suche die IMDb-Title-id (z. B. tt1375666) oder halte sie bereits vor, und rufe dann /imdb/title/credits auf. Das liefert Sections zurück — Cast, Directed by, Writing Credits und mehr — jede mit name, profile-url und bei Cast dem gespielten character.
Bekomme ich IMDb-Ratings und Review-Text?
Ja. /imdb/title liefert den aggregierten rating_value und rating_count für einen Title; /imdb/title/reviews liefert einzelne öffentliche Review-Zeilen (title, rating, helpful votes, spoiler flag). Nur öffentliche Reviews — das liefert keine privaten Account-Aktivitäten.
Kann ich auch Schauspieler und Regisseure nachschlagen, nicht nur Titles?
Ja. /imdb/name per Personen-id (z. B. nm0634240) liefert Bio, Geburtsdaten, Berufe und Known-for-Titles; /imdb/name/credits liefert die vollständige Filmografie.
Kann ich Episoden und Seasons einer TV-Serie tracken?
Ja — /imdb/title/episodes akzeptiert einen season-Parameter und paginiert pro Season, hol dir also eine Season nach der anderen, um eine vollständige Episodenliste für eine Serie aufzubauen.
Reichen IMDbs kostenlose Non-Commercial Datasets statt einer API?
Für persönliche Offline-Batch-Arbeit an Kernfeldern (title, year, genre, Basis-Ratings), ja. Aber die Lizenz verbietet kommerzielle Nutzung, und die Dateien lassen Plot, Reviews, Bilder und alles Aktuellere als das tägliche Update aus — eine Live-API deckt beide Lücken ab.