Fahrräder zählen

In Bonn gibt es 15 Fahrrad-Zählstationen. Immer wenn ein*e Radfahrer*in diese passiert, wird dies erfasst und bei dem Anbieter dieser Stationen in die Datenbank geschaufelt. Angeschafft hat diese Zähltationen die Stadt Bonn. Die Sichtbarkeit dieser Daten ist aber eher gering. An der Kenndeybrücke steht zwar z.B. eine Säule, welche die Tageswerte dieser Station anzeigt, die meisten Werte sind aber nur umständlich über die Webseite der Stadt und des Herstellers ersichtlich. Um dies zu ändern poste ich seit einer kurzen Weile auf Twitter und Mastodon tägliche Statistiken aller Fahrradzählstationen.

Allgemein dokumentiert ist aktuell nicht, wie man die Daten der Zählstationen erreichen kann. Ich habe mir dieses Wissen also etwas umständlich aus den Herstellerseiten zusammengefummelt und möchte ich es hier heute für euch dokumentieren. Es sei bedacht, dass die Stadt zwar regelmäßig (aber nur alle paar Jubelmonate) die Daten der Stationen auf opendata.bonn.de veröffentlicht, der Zugriff auf die API des Herstellers selbst bisher jedoch nicht explizit gestattet ist.

Der Zugriff auf die Daten einer Zählstation ist recht einfach. Sie werden im JSON-Format bereitgestellt. Jede Zählstation hat eine ID, die man einfach an die RESTful API übermittelt. So sieht eine Anfrage dann ungefähr aus:

https://www.eco-public.com/api/cw6Xk4jW4X4R/data/periode/{counter_id}? begin={begin_date}&end={end_date}&step={step}

Die Variablen in den geschweiften Klammern müsst ihr nun nur noch wie gewünscht ersetzen und erhaltet dann die Daten:

  • {counter_id} mit der ID eines Zählers (s. unten)
  • {begin} mit dem Anfangsdatum der gewünschten Daten in der Form YYYYMMDD
  • {end} mit dem Enddatum der gewünschten Daten in der Form YYYYMMDD
  • {stept} mit 2 für ein Interval von 15 Minuten oder 3 für ein Intervall von einer Stunde oder 4 für ein Intervall von einem Tag

Das sieht dann zum Beispiel für die Tagesdaten des Monats Mai 2019 für die Kennedeybrücke so aus:

https://www.eco-public.com/api/cw6Xk4jW4X4R/data/periode/100021143?begin=20190501&end=20190531&step=4

Die IDs der einzelnen Zähler habe ich euch hier zusammengetragen:

[
      {'id': 100021143, 'name': 'Kennedybrücke (gesamt)'},
      {'id': 100019810, 'name': 'Kennedybrücke (Südseite)'},
      {'id': 100019809, 'name': 'Kennedybrücke (Nordseite)'},
      {'id': 100032772, 'name': 'Südbrücke (gesamt)'},
      {'id': 100019722, 'name': 'Südbrücke (Südseite)'},
      {'id': 100019723, 'name': 'Südbrücke (Nordseite)'},
      {'id': 100019720, 'name': 'Nordbrücke (Südseite)'},
      {'id': 100019721, 'name': 'Nordbrücke (Nordseite)'},
      {'id': 100019724, 'name': 'Estermannufer'},
      {'id': 100019726, 'name': 'Brühler Straße'},
      {'id': 100027077, 'name': 'Wilhelm-Spiritus-Ufer'},
      {'id': 100019727, 'name': 'Straßenburger Weg'},
      {'id': 100019728, 'name': 'Von-Sandt-Ufer'},
      {'id': 100027075, 'name': 'John-J.-McCloy-Ufer'},
      {'id': 100019729, 'name': 'Rhenusallee'},
      {'id': 100027076, 'name': 'Hochwasserdamm Beuel'},
      {'id': 100019725, 'name': 'Bröhltalbahnweg'},
  ]

Die Daten der Kenndeybrücke und der Südbrücke gibt es jeweils getrennt (Südseite / Nordseite) und zusammengerechnet (gesamt = Südseite + Nordseite). Somit hat die Liste insgesamt 17 Einträge für 15 verschiedene Zähler.

Darüber hinaus werden für alle Stationen die Vorbeifahrten auch getrennt der gefahrene Richtung bereitgehalten. Dafür müsste ihr die dritte Ziffer einer ID durch eine 1 bzw. eine 2 ersetzen (fragt bloß nicht warum!?). Für welche Richtung das dann jeweils genau steht, müsst ihr über die offiziellen Websites selbst herausfinden. Da ich das aktuell nicht nutze, habe ich das bisher nicht zusammengetragen.

Und nun: Viel Spaß damit und gebt Bescheid, wenn ihr aus den Daten etwas bastelt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.