Till senaste kommentaren

Ladda ner data om en specifik busslinje en specifik tidsperiod

Hej, jag behöver hjälp hur jag laddar ner data om busslinje 12 i Norrköping (Östgötatrafiken) under år 2024. Jag behöver hjälp hur jag lyckas ladda ner denna data till min dator. Tack på förhand för hjälp!
Cornelia Tesell

Kommentarer

  • Hej Cornelia,

    Både statiskt och realtidsdata för busslinjen finns i KoDA-arkivet:https://www.trafiklab.se/api/trafiklab-apis/koda/

    KoDa är ett lager där GTFS och GTFS-RT data från Trafiklab (GTFS Regional) sparas för just dessa ändamål.
    Varje dag publicerar vi planerade tidtabellsdata som GTFS på Trafiklab. I dessa filer ingår data från 3 dagar tillbaka upp till 6 månader i framtiden.
    Varje 15e sekund publicerar vi realtidsdata som GTFS-RT på Trafiklab. Realtidsdata består av ServiceAlerts, TripUpdates och VehiclePositions, där TripUpdates innehåller avvikelser i tidtabellen jämfört med den planerade GTFS data. De kan se ut såhär:

    trip_update {
    trip {
    trip_id: "14010000668246520"
    start_date: "20250205"
    schedule_relationship: SCHEDULED
    }
    stop_time_update {
    stop_sequence: 16
    arrival {
    delay: -74
    time: 1738762126
    uncertainty: 0
    }
    departure {
    delay: 26
    time: 1738762226
    uncertainty: 0
    }
    stop_id: "9022001005151001"
    }
    }

    Där fordonet kommer vara 74 sekunder tidigt vid den 16e hållplatsen på tur 14010000668246520, och att den kommer avgå 26 sekunder sent. För att veta vilken tur och hållplats det handlar om måste man kolla i de statiska data. ”Uncertainty: 0” tyder på att den här ankomsten/avgången har skett, och att det är de slutliga värden (vad den verkliga förseningen blev). Saknas ”uncertainty: 0” så är det en prognos.

    Genom KoDa kan ni ladda ner båda statiska filer och realtidsfiler per dag. Statiska filer räcker nog med 1 fil per vecka, så ofta ändras inte de data. Realtidsfiler kan ni ladda ner paketerat per dag, där kan ni läsa varje fil för att se vad prognoserna var var 15e eller 30e sekund (minns inte exakt hur ofta KoDa sparar denna data).

    Vill ni heller analysera trafiken baserat på GPS-positioner finns även denna data, både ”live” för trafik som är ut och kör nu samt historiskt data i KoDa arkivet. GPS data uppdateras varannan sekund.

    GTFS-RT filer är i protobuf-formatet (så inte det fina JSON-formatet jag klistrade in ovan) men går lätt att läsa genom färdiga bibliotek i tex Python, där ni kan översätta datat till vilket format ni än vill. Även för GTFS finns det nog bibliotek i Python.
    För att komma åt KoDa skapar ni en nyckel på https://developer.trafiklab.se . Sen kan ni ladda ner tex TripUpdates genom en sån här anrop:
    https://api.koda.trafiklab.se/KoDa/api/v2/gtfs-rt/otraf/TripUpdates?key=KEY_HERE&date=2025-01-05

    Första gången ni gör ett anrop kommer resultatet antagligen se ut såhär:
    {"message":"Request received. Data for the requested operator, feed and date is being prepared. Send an identical request to check the status every 30s until the file is ready."}
    Ni behöver anropa API:et var 30e sekund med samma länk för att veta när filen är klart. Så länge filen inte är klart får ni http kod 202 tillbaka, när filen är färdigställd får ni http kod 200 tillbaka tillsammans med filen.

    Det är väldigt viktigt att man inte försöker ladda ner mer än 1 fil samtidigt
    , för annars kan KoDa-servern bli överbelastad och startas hela processen om från början (eller hakar det upp sig). Det kan ta lite tid att ladda ned all data för en hel månad, men ni kan nog ladda ner en fil åt gången i backgrunden medan att ni testar med första filerna,

    Hör av er om ni har några till frågor.
    Bert på Trafiklab
  • Obs: Koda API-et är just nu inte tillgängligt eftersom vi håller på med att fixa några problem. API:et borde bli tillgängligt igen senare under dagen.
    Bert på Trafiklab

Kommentera eller skriv ett nytt inlägg

Ditt namn och inlägg kan ses av alla. Din e-post visas aldrig publikt.