Skip to content

Commit

Permalink
init
Browse files Browse the repository at this point in the history
  • Loading branch information
Piet Brömmel committed May 9, 2024
1 parent 258ee18 commit 0c9b3f6
Show file tree
Hide file tree
Showing 761 changed files with 260,571 additions and 1 deletion.
26 changes: 26 additions & 0 deletions .github/workflows/data_update.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Run Python Script

on:
push:
branches:
- main

jobs:
run-python:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v2

- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.x'

- name: Install Dependencies
run: pip install -r requirements.txt

- name: Run Python Script
env:
API_KEY: ${{ secrets.API_KEY }}
run: python your_script.py
31 changes: 30 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,30 @@
# deutsche-bahn-data
# Deutsche Bahn Data

This is a repository with accumulated public data from "Deutsche Bahn", the biggest german train company.

## Data Gathering

### Die größten Bahnhöfe ermitteln

Die einfachste Möglichkeit die größten Bahnhöfe Deutschlands zu bekommen ist über die [Preisklasse](https://de.wikipedia.org/wiki/Preisklasse). Diese gibt indirekt an wie groß ein Bahnhof ist. Dazu habe ich eine [aktuelle Tabelle](https://www.deutschebahn.com/resource/blob/11895816/ef4ecf6dd8196c7db3ab45609d8a2034/Stationspreisliste-2024-data.pdf) aller Bahnhöfe mit ihren Preisklassen gefunden. Das Problem ist das ich noch die eva Nummer der Bahnhöfe brauche für die API.

https://wiki.openstreetmap.org/w/images/c/c2/20141001_IBNR.pdf (Daten von 1.10.2014) die Zuweisung von dem Namen des ahnhofs zu ihrer IBNR-Nummer (in der api heißt wir die nummer eva gennant). Die API woher die Daten kommen gibt es nicht mehr (https://data.deutschebahn.com/dataset/data-haltestellen), daher wird eine alte Versionhier benutzt. In ihr habe ich aber die Nummern für alle relevanten Bahnhöfe gefunden.

Diese beiden Datenquellen werden in `save_eva_name_list.py` benutzt um eine Liste der ~100 größten Bahnhöfe Deutschlands mit Name und eva Nummer zu erstellen.

Dies sind die Befehle um die Liste selber zu erstellen:

```bash
# download the two pdfs with the data
wget https://www.deutschebahn.com/resource/blob/11895816/ef4ecf6dd8196c7db3ab45609d8a2034/Stationspreisliste-2024-data.pdf
wget https://wiki.openstreetmap.org/w/images/c/c2/20141001_IBNR.pdf

# install dependancies for the script
pip3 install tabula-py PyPDF2

# run the script
python3 save_eva_name_list.py
```

Wenn jemand eine aktuelle Liste von Bahnhöfen und ihrer eva nummer findet erstellt gerne ein issue.

Loading

0 comments on commit 0c9b3f6

Please sign in to comment.