This repository contains a Python script to scrape and gather messages from the Munich commute/transport complaint and appeal platform. The script scrapes data within a specified geographical area, fetches detailed information for each message, and saves the results to JSON files.
To use or publish this data, you must follow the terms of use, which can be found at https://muenchenunterwegs.de/p/impressum https://muenchenunterwegs.de/kontakt and cite the data from the City of Munich Mobilitätsreferat.
- Scrapes messages related to all modes of transport from the specified area in Munich.
- Fetches detailed infobox and message data for each message.
- Saves combined data and a slim export with just message details.
- Python 3.6+
requests
math
time
json
-
Clone this repository:
git clone https://github.com/thomas.fink/munich-transport-messages.git cd munich-transport-messages
-
Install the required Python packages:
pip install requests
-
Run the script to scrape the entire area and fetch message details:
python scrape_map.py
-
The script will save two files:
combined_response.json
: The combined data of all messages scraped from the specified area.updated_combined_response_with_details.json
: The combined data with infobox and message and answers.slim_export.json
: A slim export containing only the message and answers.
The script performs the following steps:
- Scrape Entire Area: Scrapes messages within a specified bounding box, tile by tile.
- Save Initial Response: Saves the initial combined response to
combined_response.json
. - Fetch Infobox and Message Details: Loads the combined response and fetches infobox and message details for each message.
- Save Final Data: Saves the updated data with details and a slim export with just the message details.
- You can modify the area boundaries, zoom level, number of rows, and tile size in the script to customize the scraping area and granularity.
This project is licensed under the MIT License - see the LICENSE file for details.
Dieses Repository enthält ein Python-Skript, um Nachrichten von der Münchner Beschwerdeplattform für Verkehrsmeldungen zu sammeln. Das Skript sammelt Daten innerhalb eines bestimmten geografischen Gebiets, ruft detaillierte Informationen für jede Nachricht ab und speichert die Ergebnisse in JSON-Dateien.
Um diese Daten zu verwenden oder zu veröffentlichen, müssen Sie die Nutzungsbedingungen beachten, die Sie unter https://muenchenunterwegs.de/p/impressum https://muenchenunterwegs.de/kontakt finden, und die Daten des Mobilitätsreferats der Stadt München zitieren.
- Sammelt Nachrichten zu allen Verkehrsmodi aus dem angegebenen Gebiet in München.
- Ruft detaillierte Infobox- und Nachrichtendaten für jede Nachricht ab.
- Speichert kombinierte Daten und einen kompakten Export mit nur den Nachrichtendetails.
- Python 3.6+
requests
math
time
json
-
Klonen Sie dieses Repository:
git clone https://github.com/thomas.fink/munich-transport-messages.git cd munich-transport-messages
-
Installieren Sie die erforderlichen Python-Pakete:
pip install requests
-
Führen Sie das Skript aus, um das gesamte Gebiet zu durchsuchen und Nachrichtendetails abzurufen:
python scrape_map.py
-
Das Skript speichert zwei Dateien:
combined_response.json
: Die kombinierten Daten aller gesammelten Nachrichten aus dem angegebenen Gebiet.updated_combined_response_with_details.json
: Die kombinierten Daten mit Infobox- und Nachrichten und Antworten.slim_export.json
: Ein kompakter Export, der nur die Nachrichten und Antworten enthält.
Das Skript führt die folgenden Schritte aus:
- Gesamtes Gebiet durchsuchen: Sammelt Nachrichten innerhalb eines bestimmten Begrenzungsrahmens, Kachel für Kachel.
- Anfängliche Antwort speichern: Speichert die anfängliche kombinierte Antwort in
combined_response.json
. - Infobox- und Nachrichtendetails abrufen: Lädt die kombinierte Antwort und ruft Infobox- und Nachrichtendetails für jede Nachricht ab.
- Endgültige Daten speichern: Speichert die aktualisierten Daten mit Details und einen kompakten Export mit nur den Nachrichtendetails.
- Sie können die Gebietsgrenzen, die Zoomstufe, die Anzahl der Zeilen und die Kachelgröße im Skript anpassen, um das Durchsuchungsgebiet und die Granularität zu konfigurieren.
Dieses Projekt ist unter der MIT-Lizenz lizenziert - siehe die LICENSE Datei für Details.