Wegwichtel/tools/python/README.md
2026-06-17 11:41:36 +02:00

1.9 KiB

Python-Werkzeuge für die Wegwichtel-REST-API

Die Skripte benötigen nur Python 3 und die Standardbibliothek. Node.js, curl und zusätzliche Python-Pakete sind auf dem aufrufenden Rechner nicht erforderlich.

Authentifizierung

Jeder Request wird zunächst mit den bereits bekannten Zugangsdaten oder ohne Zugangsdaten ausgeführt. Antwortet ein vorgeschalteter Webserver mit 401 Unauthorized, fragt das Werkzeug Benutzername und Passwort interaktiv ab und wiederholt denselben Request. Das Passwort wird mit getpass ohne Bildschirmausgabe eingelesen.

Optionale Umgebungsvariablen:

export WEGWICHTEL_URL='https://wegwichtel.de'
export WEGWICHTEL_USER='florian'
# WEGWICHTEL_PASSWORD nur für unbeaufsichtigte Aufrufe verwenden.

Alle Skripte unterstützen außerdem --base-url und --username. Fehlende fachliche Parameter werden interaktiv abgefragt.

Routen

python3 tools/python/create_route.py
python3 tools/python/update_route.py
python3 tools/python/append_route.py
python3 tools/python/delete_route.py
python3 tools/python/restore_route.py

POIs

python3 tools/python/create_poi.py
python3 tools/python/update_poi.py
python3 tools/python/delete_poi.py

Beim Löschen eines POIs entfernt die API auch dessen Bilder und Audiodatei.

Bilder

python3 tools/python/create_picture.py
python3 tools/python/update_picture.py
python3 tools/python/delete_picture.py

Audio

python3 tools/python/create_audio.py
python3 tools/python/update_audio.py
python3 tools/python/delete_audio.py

Beispiel mit Parametern

python3 tools/python/create_picture.py \
  --base-url https://wegwichtel.de \
  --route-id 1 \
  --poi-id 7 \
  --file ./eiche.jpg \
  --caption 'Blick auf die Baumkrone' \
  --sequence 0

Die Multipart-Hilfsfunktion sendet für Dateien absichtlich keinen behaupteten MIME-Typ. Der Server bestimmt das Format aus dem Dateiinhalt.