Wie man Twitch-Daten scrapt: Zuschauer, Kategorien und Sponsoring-Signale
Die offizielle Helix API begrenzt, was Sie abrufen können, und verbirgt die Daten, die Forscher tatsächlich wollen. Hier erfahren Sie, wie Sie Zuschauerzahlen, Follower-Gesamtzahlen und Kategorietrends von Twitchs eigenem GraphQL-Endpunkt erhalten — und die Proxies, die es am Laufen halten.
Twitch sitzt auf einem Goldschatz an öffentlichen Daten — Live-Zuschauerzahlen, Kategorierankings, Follower-Gesamtzahlen, Clips, Stream-Titel und Tags — die Vermarkter, Analysten und Sponsoring-Scouts alle wollen. Der Haken ist, dass die offizielle Helix API Ihnen einen kuratierten Ausschnitt davon gibt, der begrenzt ist und die am meisten nachgefragten Metriken fehlt (wie Follower-Zahlen pro Spiel oder historische Zuschauertrends). Dieser Leitfaden behandelt, wie man den Rest scrapt: was die API Ihnen nicht gibt, wie man es von Twitchs eigenen Web-Endpunkten bekommt, und das Proxy-Setup, das einen geplanten Scraper davor bewahrt, blockiert zu werden.
Wo die Helix API aufhört
Helix ist der genehmigte Weg und Sie sollten ihn bevorzugen, wo er Sie abdeckt: er ist stabil, dokumentiert und liefert saubere Daten für Streams, Benutzer, Spiele und Clips. Aber er hat harte Grenzen. Er erfordert eine App-Registrierung und OAuth, er misst Sie gegen einen Punkte-Eimer (der Standard ist 800 Punkte pro Minute), und er gibt einfach nicht alles preis, was die Leute wollen — Sie können ihn nicht fragen "wie viele Follower hat der Top-Kanal dieses Spiels" oder eine Zuschauerzahlen-Kurve der letzten Stunde rekonstruieren. Sobald Ihre Frage außerhalb seines Schemas fällt, scrapen Sie.
Twitch zu scrapen bedeutet, dieselben öffentlichen Daten — die Zahlen, die Sie auf der Seite sehen können, ohne sich einzuloggen — mit Code statt von Hand zu ziehen. Nichts hier berührt private Daten oder authentifizierte Seiten; es sind das Verzeichnis, die Kategorieseiten und die öffentlichen Kanalansichten, die jeder Besucher sieht.

Der schnelle Weg: Twitchs GraphQL-Endpunkt
Twitchs eigener Web-Client kommuniziert mit einem öffentlichen GraphQL-Endpunkt unter Verwendung einer bekannten Client-ID, die im JavaScript der Seite enthalten ist. Ihn direkt anzusprechen ist der schnellste, leichteste Weg zu scrapen: kein Login, kein Headless-Browser, strukturiertes JSON direkt zurück. Sie senden eine Abfrage mit dem öffentlichen Client-ID-Header und erhalten Streams, Zuschauerzahlen, Tags und Clips in einem Aufruf. Da es dieselbe API ist, die die Website verwendet, liefert sie genau das, was ein Besucher sieht — und weit mehr pro Anfrage als das Scrapen der Seite.
import requests
PROXY = "http://USER:PASS@gate.quantumproxies.io:8000"
proxies = {"http": PROXY, "https": PROXY}
# public web Client-ID shipped in Twitch's own frontend
HEADERS = {"Client-ID": "kimne78kx3ncx6brgo4mv6wki5h1ko", "Content-Type": "application/json"}
query = {
"query": """
query($name: String!) {
user(login: $name) {
displayName
followers { totalCount }
stream { title viewersCount game { name } }
}
}""",
"variables": {"name": "somestreamer"},
}
r = requests.post("https://gql.twitch.tv/gql", json=query,
headers=HEADERS, proxies=proxies, timeout=15)
print(r.json()["data"]["user"])
Eine Anfrage liefert den Anzeigenamen, die Gesamtzahl der Follower und — wenn der Kanal live ist — den Stream-Titel, aktuelle Zuschauer und Kategorie. Diese Follower-Gesamtzahl ist genau das Feld, das die Helix API umständlich macht, in großem Maßstab zu erhalten, und hier ist es eine einzige Abfrage.
Das Kanalobjekt ist reichhaltiger als die Grundlagen. Ein typischer Datensatz enthält die numerische channelId, den login-Slug und displayName, die Profilbeschreibung, ob der Kanal Partnerstatus hat, und — für Live-Kanäle — das aktuelle Spiel, die Zuschauerzahl und die Tags des Streams. Tags sind wichtiger, als sie aussehen: Sie sind, wie Sie Streamer nach Sprache, Region oder Inhaltstyp segmentieren, wenn Sie eine Shortlist für Outreach erstellen. Ziehen Sie dieselbe Abfrage über eine Liste von Logins und Sie haben einen vergleichbaren Datensatz — Follower-Größe, Partnerstatus, Live-Kategorie — in einem Durchgang, keine pro-Kanal-Seitenladungen.
Das Verzeichnis: Kategorie- und Zuschauertrends
Für Marktsignale — welche Spiele angesagt sind, wie sich die Zuschauerzahlen im Laufe des Tages verändern — ist das Kategorieverzeichnis die Quelle. Das Muster, das gut funktioniert, ist, eine Kategorieseite (zum Beispiel Just Chatting) in einem festen Intervall zu erfassen und die Top-Streams mit ihren Titeln, Streamern und Zuschauerzahlen plus einem Zeitstempel zu speichern. Machen Sie das alle 15 Minuten und Sie bauen Zuschauertrend-Kurven und Kategorierankings, die die offizielle API Ihnen nie liefert. Ein leichter Scheduler und ein Browser oder eine GraphQL-Abfrage ist alles, was es braucht; die Disziplin liegt im Intervall und der Speicherung, nicht im Abruf.
import requests, time
from datetime import datetime, timezone
def snapshot_category(slug):
payload = {
"query": "query($slug: String!){ game(slug:$slug){ streams(first:30){ edges{ node{ title viewersCount broadcaster{ login } } } } } }",
"variables": {"slug": slug},
}
r = requests.post("https://gql.twitch.tv/gql", json=payload,
headers=HEADERS, proxies=proxies, timeout=15)
ts = datetime.now(timezone.utc).isoformat()
rows = []
for e in r.json()["data"]["game"]["streams"]["edges"]:
n = e["node"]
rows.append({"ts": ts, "login": n["broadcaster"]["login"],
"title": n["title"], "viewers": n["viewersCount"]})
return rows
# run on a schedule (e.g. every 15 min) and append to storage
while True:
save(snapshot_category("just-chatting"))
time.sleep(900)
Holen Sie sich Wohnproxies für Twitch-Scraping

Warum Wohnproxies hier wichtig sind
Twitch überwacht den Verkehr wie jede große Plattform. Ein geplanter Scraper, der alle 15 Minuten von einer Rechenzentrums-IP feuert, ist ein offensichtliches Muster, und der GraphQL-Endpunkt wird anfangen, Fehler oder leere Ergebnisse zurückzugeben, sobald er Sie markiert. Wohn-IPs von echten ISPs mischen sich in den normalen Zuschauerverkehr ein, und das Rotieren pro Lauf verteilt die Anfragen, sodass keine einzelne Adresse wie ein Bot aussieht. Für ortsspezifische Forschung — einige Kategorien und Clips erscheinen je nach Region unterschiedlich — möchten Sie auch spezifische Länderausgänge, die ein Wohnpool über 200+ Länder Ihnen bietet. Mobile IPs sind die stärkste Option für die aggressivsten Ziele; unser Leitfaden zu Proxies für soziale Plattformen behandelt, wann man sie verwenden sollte.
Was Sie damit bauen können
Die Anwendungsfälle folgen den Daten. Follower-Zahlen und Kategoriepräsenz treiben Influencer-Entdeckung und Sponsoring-Scouting an — die richtigen Streamer vor einer Kampagne finden, korrekt dimensioniert. Zuschauertrend-Snapshots speisen die Forschung in der Gaming-Industrie: welche Titel gewinnen, wann das Publikum seinen Höhepunkt erreicht, wie sich ein Launch stündlich entwickelt. Clip- und Titeldaten unterstützen Inhalts- und Trendanalysen. Kommerzielle Twitch-Scraper berechnen etwa fünf Dollar pro tausend Ergebnisse dafür; es selbst mit eigenen Proxies zu betreiben, kostet einen Bruchteil davon, sobald Sie die Pipeline haben, und Sie besitzen die Rohdaten. Derselbe Snapshot-und-Diff-Ansatz treibt unsere anderen Plattform-Leitfäden an, wie YouTube-Daten über das API-Kontingent hinaus zu erschließen.
Häufig gestellte Fragen
Kann man Daten von Twitch scrapen?
Ja — öffentliche Daten wie Stream-Titel, Zuschauerzahlen, Follower-Gesamtzahlen, Kategorien und Clips sind sichtbar, ohne sich einzuloggen, und können mit Code gesammelt werden. Twitchs eigener Web-Client verwendet einen öffentlichen GraphQL-Endpunkt, den Sie direkt abfragen können. Respektieren Sie die Plattformbedingungen, meiden Sie private oder authentifizierte Daten und drosseln Sie Ihre Anfragen.
Warum nicht einfach die Twitch Helix API verwenden?
Verwenden Sie Helix, wo es passt — es ist offiziell und stabil. Aber es erfordert OAuth, misst Sie gegen einen 800-Punkte-pro-Minute-Eimer und lässt Felder aus, die Forscher wollen, wie Follower-Zahlen, die an Kategorien gebunden sind, oder minutengenaue Zuschauerhistorie. Wenn Ihre Frage außerhalb seines Schemas fällt, füllt das Scrapen der öffentlichen Web-Endpunkte die Lücke.
Brauche ich Proxies, um Twitch zu scrapen?
Für eine einmalige Abfrage, nein. Für alles Geplante oder im großen Maßstab, ja. Ein wiederholtes Muster von einer einzigen IP wird markiert und der Endpunkt gibt Fehler oder leere Daten zurück. Rotierende Wohnproxies verteilen Anfragen über reale ISP-Adressen, sodass Ihr Monitor weiterhin vollständige Ergebnisse liefert, und ermöglichen Ihnen, regionsspezifische Ansichten abzurufen.
Wie oft kann ich Twitch-Daten erfassen?
Für Zuschauertrends sind alle 10-15 Minuten ein guter Ausgleich — häufig genug, um tagesinterne Verschiebungen zu sehen, ohne den Endpunkt zu überlasten. Fügen Sie dem Intervall kleine zufällige Jitter hinzu, rotieren Sie Ihre Exit-IP bei jedem Lauf und speichern Sie Zeitstempel, damit Sie Trends rekonstruieren können. Engere Intervalle erhöhen Ihr Blockierungsrisiko für wenig zusätzlichen Nutzen.
Twitchs öffentliche Daten sind weit reicher, als die Helix API preisgibt, und sein eigener GraphQL-Endpunkt liefert die meisten davon in einzelnen Abfragen zurück — Follower-Gesamtzahlen, Zuschauerzahlen, Kategorieverzeichnisse, Clips. Verpacken Sie das in einen höflichen Zeitplan, leiten Sie es durch rotierende Wohn-IPs, und Sie haben einen Monitor, der Trends und Sponsoring-Signale aufdeckt, die die offizielle API außer Reichweite hält.