Skip to content

Latest commit

 

History

History
121 lines (82 loc) · 5.44 KB

README.md

File metadata and controls

121 lines (82 loc) · 5.44 KB

bmtc-gtfs

Unofficial GTFS dataset for BMTC routes, stops and timetables in Bengaluru. Raw data sourced from Namma BMTC app, parsed and saved as GTFS.

Motivation

Caveat

The source for the data and analysis in this repository are the routes, stops and timetables as displayed on the Namma BMTC app. However, the Namma BMTC app is not completely accurate, and is particularly unreliable for timetables and stop timings. Nonetheless, the data can be used to understand general trends in the BMTC network.

Due to the design of the Namma BMTC app, only routes with functional live tracking are included in the GTFS. Any missing routes may be due to live tracking unavailability and not necessarily due to the route being inoperational.

GTFS

The GTFS dataset can be found here

Maps

Route frequency

Route frequency - number of daily trips passing through a given route. View interactive map

Stop frequency

Stop frequency - number of daily trips passing through a given stop. View interactive map

Most frequent route

Most frequent routes - MF-375D (434 trips), MF-378 (393 trips), MF-410FA (319 trips), 290-E (306 trips), KBS-3A (293 trips). View interactive map

Most frequent stop

Most frequent stops - KBS (12520 trips), Corporation (7376 trips), Town Hall (4631 trips), Indian Express (4268 trips), Maharani College (4187 trips). View interactive map

GeoJSON

GeoJSONs can be found below:

Conversion into other formats can be done using free tools like mapshaper or QGIS

CSV

CSVs can be found below:

HTML

Visualize the routes, stops and timetables in the GTFS dataset, with a web browser: https://bmtc-gtfs.netlify.app

Validations

Scripts

  • scrape.py: Scrape raw data from Namma BMTC
  • gtfs.py: Parse raw data and save as GTFS
  • valiate.py: Pass the GTFS through multiple GTFS validation tools
  • geojson.py: Process the GTFS and output a GeoJSON representing the network

Raw JSON

Raw JSON data scraped from Namma BMTC can be found below:

To-do

  • Refactor/optimize scripts
    • Fix validation errors and warnings
    • Fix missing/failed routes/stops/timetables
    • Minimize network calls
    • Speed up data processing
    • GitHub Actions workflow
    • Daily update of route/stop/timetable changes
  • PDF timetables
  • Add maps (and data analysis)
  • Add fare information

Contributing

Interested in contributing or want to know more? Join the bengwalk Discord Server

Credits

Inspiration