Tony Wang7 Min. LesezeitStrava scrapen in 2026: API- und Python-Guide
Strava bietet eine offizielle OAuth-API, verbietet Scraping aber ausdrücklich. So bekommen Sie öffentliche Routen, Clubs und Challenges.
Strava ist keine Plattform, auf der du dich unauffällig an den Regeln vorbeischummeln kannst — sie betreibt eine dokumentierte OAuth-2.0-API unter developers.strava.com, und ihre Nutzungsbedingungen verbieten separat und ausdrücklich „Screen Scraping" und „Crawler" gegen die Website selbst. Mitte 2026, im Vorfeld einer vertraulichen IPO-Anmeldung, hat Strava beides weiter verschärft: Das Unternehmen führte eine pauschale Entwicklergebühr ein, stellte mehrere API-Endpoints ein und sperrte Daten, die zuvor für jeden sichtbar waren, hinter ein Login. Dieser Guide behandelt den tatsächlichen Umfang und die Grenzen der offiziellen API, warum DIY-Scraping hier keine gute Idee ist, und wie eine strukturierte API öffentliche Routen-, Club- und Challenge-Daten zurückgeben kann — niemals die privaten Aktivitäten oder den Standortverlauf eines bestimmten Athleten.
Warum Strava-Daten scrapen?
- Routen- und Trail-Recherche — die beliebtesten Wander-, Lauf- und Radrouten einer Region für eine Fitness-App, einen Reiseführer oder eine Outdoor-Ausrüstungs-Website sichtbar machen.
- Club- und Community-Analysen — Größe, Wachstum und Standort von Clubs für die Lauf-/Fahrrad-Club-Recherche oder Sponsoring-Analysen verfolgen.
- Challenge- und Event-Tracking — Stravas aktuelle öffentliche Challenge-Galerie für saisonale Fitness-Marketing-Trends beobachten.
- Marktforschung für Fitness-Apps — konkurrierende Apps und Clubs in einer bestimmten Sportart oder Region benchmarken.
- KI-/LLM-Pipelines — öffentliche Routen- und Club-Zusammenfassungen in Agenten einspeisen, die Anfragen wie „beste Wanderwege in der Nähe von X" beantworten.
Ist es legal, Strava zu scrapen?
Option 1: Stravas eigene offizielle API (und ihre Grenzen)
Die offizielle Strava API v3 basiert auf OAuth 2.0: Deine App leitet einen Athleten durch Stravas Consent-Bildschirm, und Strava stellt ein Token aus, das auf diesen Athleten beschränkt ist. Segment- und Routendaten waren historisch für jede authentifizierte App sichtbar, aber Strava hat das schrittweise eingeschränkt:
- Athleten-bezogener Scope. Ohne die OAuth-Freigabe eines bestimmten Athleten kannst du nur Daten über dich selbst abrufen (nützlich zum Testen). Daten über andere Nutzer zu erhalten erfordert, dass jeder von ihnen deine App einzeln autorisiert.
- Rate-Limits. Neue Apps starten im „Single-Player-Modus" mit etwa 200 Requests/15 Minuten und 2.000/Tag; über 10 verbundene Athleten hinaus ist ein App-Review erforderlich, danach steigen die Limits auf etwa 400/15 Minuten und 4.000/Tag.
- Deprecations 2026. Laut dem offiziellen Changelog werden die Endpoints Club Activities, Club Members und Club Admins am 1. September 2026 entfernt, und der Endpoint Explore Segments wird am selben Tag auf einen genehmigten „Extended Access Tier" beschränkt. Eine neue API-Basis-URL (
api-v3.strava.com) ersetzt die alte ab dem 4. Januar 2027. - Neue Entwicklergebühr. Im Rahmen derselben Änderungen im Juni 2026 führte Strava eine pauschale monatliche Gebühr für den API-Zugriff ein (berichtet mit etwa 11,99 $/Monat), die das zuvor kostenlose gestaffelte Programm ersetzt.
- Kein KI-Training, kein Massenexport, keine erneute Anzeige der Daten anderer Nutzer. Diese Einschränkungen wurden Ende 2024 in das API Agreement aufgenommen und gelten weiterhin.
Wenn dein Use Case „einen Athleten sein eigenes Strava-Konto mit meiner App verbinden lassen" ist, ist die offizielle API das richtige und einzig zulässige Werkzeug. Sie ist nicht dafür konzipiert, einen allgemeinen Datensatz von Routen, Clubs oder Athleten über die gesamte Plattform hinweg aufzubauen.
Option 2: DIY in Python (und warum es scheitert)
Nichts hindert dich daran, requests oder einen Headless-Browser auf Stravas öffentliche Seiten zu richten — aber genau das verbieten Stravas eigene Nutzungsbedingungen, und ihre robots.txt blockiert bekannte KI-Crawler vollständig (GPTBot, Google-Extended, ClaudeBot, Meta-ExternalAgent sind seitenweit ausgeschlossen). Über das rechtliche Risiko hinaus:
- Login-Wände. Seit den Änderungen im Juni 2026 erfordern Daten, die zuvor für jeden angezeigt wurden — einschließlich Club-Listen —, jetzt eine eingeloggte Session, sodass ein nicht authentifizierter Scraper deutlich weniger sieht als früher.
- Anti-Bot-Abwehr. Strava härtet seine Website im Vorfeld der IPO aktiv gegen Scraper ab, erwarte also Fingerprinting, Rate-Limiting und IP-Sperren zusätzlich zum ToS-Risiko.
- Kein stabiles öffentliches JSON. Die Routen-, Club- und Challenge-Seiten sind serverseitig gerendertes HTML, keine dokumentierte API, sodass Selektoren bei Redesigns brechen.
Angesichts des ausdrücklichen ToS-Verbots ist DIY-Scraping von Strava ein deutlich anderes Risikoprofil als die DIY-Abschnitte in unseren anderen How-to-Scrape-Guides — plane entsprechend.
Option 3: Eine strukturierte Strava-API
Für öffentliche Routen-, Club- und Challenge-Daten — niemals die privaten Aktivitäten, GPS-Tracks oder login-geschützten Inhalte eines bestimmten Athleten — kann eine Strava-Scraping-API normalisiertes JSON aus Stravas öffentlichem Routen-Explorer, Club-Profil- und Challenge-Galerie-Seiten zurückgeben. Routen nach Sportart, Land und Region durchsuchen:
curl "https://api.crawlora.net/api/v1/strava/routes?sport=hiking&country=usa®ion=colorado" \
-H "x-api-key: $CRAWLORA_API_KEY"
Derselbe Aufruf in Python:
import requests
resp = requests.get(
"https://api.crawlora.net/api/v1/strava/routes",
headers={"x-api-key": "YOUR_API_KEY"},
params={"sport": "hiking", "country": "usa", "region": "colorado"},
)
routes = resp.json()["data"]["routes"]
for r in routes[:5]:
print(r["rank"], r["name"], r["distance_raw"], r["difficulty"])
Eine Antwort ist ein rangierter Routen-Index (die Felder sind beispielhaft — prüf die Docs für das aktuelle Schema):
{
"code": 200,
"msg": "OK",
"data": {
"sport": "hiking",
"country": "usa",
"region": "colorado",
"title": "Top 318 hiking trails in Colorado",
"total_pages": 16,
"total_results": 318,
"routes": [
{
"rank": 1,
"name": "Mallory Cave via N.C.A.R. Trail",
"path": "hiking/usa/colorado/boulder/mallory-cave_5171952737974445730",
"difficulty": "Easy",
"distance_raw": "1.46 mi",
"elevation_gain_raw": "345 ft"
}
]
}
}
Ruf die vollständigen Details für eine Route über den path aus dem Index ab:
curl "https://api.crawlora.net/api/v1/strava/routes/detail?path=hiking/usa/colorado/boulder/mallory-cave_5171952737974445730" \
-H "x-api-key: $CRAWLORA_API_KEY"
Ruf das öffentliche Profil eines Clubs anhand seiner ID ab, oder zieh Stravas aktuelle öffentliche Challenge-Galerie:
h = {"x-api-key": "YOUR_API_KEY"}
base = "https://api.crawlora.net/api/v1/strava"
club = requests.get(f"{base}/clubs/521703", headers=h).json()["data"]
print(club["name"], club["member_count"], club["location"])
challenges = requests.get(f"{base}/challenges", headers=h).json()["data"]
print(challenges["promoted_challenge"]["name"])
Was du sammeln kannst
Dies ist auf öffentliche Routen-, Club- und Challenge-Listen beschränkt — nicht auf den privaten Aktivitäts-Feed, GPS-Tracks oder die Freundesliste eines Athleten:
- Routen-Index und -Details — Name, Sportart, Schwierigkeitsgrad, Distanz, Höhenmeter, geschätzte Dauer und Beschreibung für öffentliche Routen nach Sportart/Land/Region.
- Öffentliches Club-Profil — Name, Standort, Mitgliederzahl, Verifizierungsstatus und Beschreibung für eine Club-ID — dieselben Felder, die auf der öffentlichen Seite eines Clubs sichtbar sind, nicht dessen Mitgliederliste oder Aktivitäts-Feed.
- Öffentliche Challenge-Galerie — Stravas aktuell beworbene und kategorisierte Challenges (Name, Ziel, Dauer), dieselbe Liste, die unter strava.com/challenges angezeigt wird.
Einschränkungen
- Niemals private Athletendaten. Keine individuellen Aktivitäten, von einer bestimmten Person gefahrene GPS-Routen, Herzfrequenz oder Freunde/Follower — diese Daten erfordern die eigene OAuth-Zustimmung dieses Athleten über Stravas offizielle API.
- Stravas Bedingungen schränken automatisiertes Sammeln ein. Behandle dies als höheres Risiko als die meisten Plattformen in dieser Serie — prüf Stravas API Policy und Nutzungsbedingungen selbst, bevor du irgendein Sammeln skalierst.
- Login-Sperren nehmen zu. Nach dem Anti-Scraper-Vorstoß im Juni 2026 kann im Laufe der Zeit mehr von dem, was zuvor ohne Konto sichtbar war, hinter ein Login wandern, was einschränken kann, was eine auf öffentlichen Seiten basierende Quelle erreichen kann.
- Kein Massenexport von Athleten-Aktivitäten. Wenn dein Use Case individuelle Trainingsdaten von Athleten benötigt, existieren diese nur über die offizielle OAuth-API mit der Zustimmung jedes einzelnen Athleten — dafür gibt es keine legitime Abkürzung.
Wo das zum Einsatz kommt
- Outdoor- und Fitness-Content — die bestbewerteten regionalen Trails und Routen für Reise- oder Ausrüstungs-Websites sichtbar machen.
- Club-Recherche und Sponsoring-Analysen — Lauf-/Fahrrad-Clubs nach Standort finden und für Community-Partnerschaften bewerten.
- Trend-Tracking im Fitness-Marketing — beobachten, welche Challenges Strava nach Sportart und Saison bewirbt.
Quellen
Jetzt loslegen
Zuerst kostenlos testen: eine beliebige öffentliche URL durch den Free Web Scraper laufen lassen, oder mit dem Anti-Bot-Checker prüfen, ob eine Seite Bots blockiert — ohne Anmeldung.
Teste den Routes-Endpoint im Playground, prüf das aktuelle Response-Schema in den API-Docs und sieh dir die Credit-Kosten auf der Preisseite an. Wenn du Fitness- und Aktivitätsplattformen vergleichst, kombinier das mit wie man Instagram scrapt für die Social-Media-Präsenz einer Marke, oder mit wie man Google Maps scrapt für die lokalen Unternehmen rund um einen beliebten Trailhead. Bevor du etwas baust, das im großen Maßstab läuft, lies ist Web Scraping in 2026 legal? — Stravas eigene Bedingungen sind strenger als die meisten.
Häufig gestellte Fragen
Hat Strava eine offizielle API?
Ja. Strava betreibt eine dokumentierte OAuth-2.0-API (v3) unter developers.strava.com. Ihre App leitet einen Athleten durch Stravas Consent-Bildschirm und erhält ein Token, das auf die eigenen Daten dieses Athleten beschränkt ist — es handelt sich nicht um einen allgemeinen Export der Plattform.
Kann ich die privaten Aktivitäten oder GPS-Daten eines anderen Athleten scrapen?
Nein. Private Aktivitätsdaten, GPS-Tracks, Herzfrequenz und ähnliche athletenspezifische Daten sind nur über Stravas offizielle OAuth-API zugänglich, und nur für den bestimmten Athleten, der Ihre App ausdrücklich autorisiert. Es gibt keinen legitimen Weg, ohne Zustimmung auf die privaten Aktivitätsdaten einer anderen Person zuzugreifen.
Ist es legal, Strava zu scrapen?
Behandeln Sie Strava als strengeren Fall als die meisten Plattformen. Ihre Nutzungsbedingungen verbieten ausdrücklich automatisierten Zugriff, Data Mining, Screen Scraping und Crawler in jeglicher Form, unabhängig vom Login-Status, und ihre API Policy verbietet separat Web Scraping und Massendatenextraktion. Prüfen Sie Stravas Bedingungen selbst und konsultieren Sie einen Anwalt, bevor Sie etwas in großem Maßstab aufbauen.
Welche öffentlichen Strava-Daten kann ich mit einer strukturierten API sammeln?
Öffentliche Routen-Indizes und Routen-Details nach Sportart/Land/Region, das öffentliche Profil eines Clubs (Name, Standort, Mitgliederzahl, Beschreibung) und Stravas aktuelle öffentliche Challenge-Galerie — dieselben Informationen, die auf Stravas öffentlichen Seiten sichtbar sind, keine privaten Athletendaten.
Warum hat Strava 2026 den Zugriff auf zuvor öffentliche Daten eingeschränkt?
Im Juni 2026, im Vorfeld einer vertraulichen IPO-Anmeldung, sperrte Strava Daten, die zuvor ohne Konto sichtbar waren (einschließlich Club-Listen), hinter ein Login, führte eine pauschale Entwicklergebühr ein und stellte mehrere API-Endpoints ein — mit Verweis auf den Druck durch KI-Unternehmen, die die Website für Trainingsdaten scrapen.
Welche Strava-API-Endpoints werden 2026 entfernt?
Laut Stravas offiziellem API-Changelog werden die Endpoints Club Activities, Club Members und Club Admins am 1. September 2026 entfernt, und der Endpoint Explore Segments wird am selben Tag auf einen genehmigten Extended Access Tier beschränkt.
Welche Rate-Limits gelten für die Strava-API?
Neue Entwickler-Apps starten im Single-Player-Modus mit etwa 200 Requests pro 15 Minuten und 2.000 pro Tag. Nach einem bestandenen App-Review mit 10 oder mehr verbundenen Athleten steigen die Limits auf etwa 400 Requests pro 15 Minuten und 4.000 pro Tag.