Skip to main content

A Python package for interacting with OpenDataSoft (ODS) platforms.

Project description

ods-utils-py

Mit ods-utils-py lässt sich direkt aus Python auf die Automation API von Opendatasoft zugreifen. Voraussetzung ist der Besitz eines gültigen API Schlüssels (API-Schlüssel erstellen). Der Quellcode ist öffentlich auf Github.

Inhaltsverzeichnis


Installation

Installation via pip:

pip install ods-utils-py

Voraussetzungen

  • Python Version: 3.11 oder höher
  • API-Schlüssel: Ein gültiger API-Schlüssel von Opendatasoft

Erste Schritte

API-Schlüssel einrichten

Um ods-utils-py nutzen zu können, wird ein gültiger API-Key von Opendatasoft benötigt.

Für die OGD Basel kann der API Key hier erstellt werden.

Für die Key-Erstellung auf anderen Plattformen kann oben rechts auf die Schaltfläche mit dem Benutzernamen geklickt werden, um die Kontoeinstellungen zu öffnen. Unter API-Keys können benutzerdefinierte Keys mit den entsprechenden Berechtigungen erstellt werden.

Der Name sollte beschreiben wofür er verwendet wird, beispielsweise "ods_utils_py - <Initialer Name des Keys>"

Der API Key benötigt die folgenden 4 Berechtigungen:

  • Alle Datensätze durchsuchen
  • Neue Datensätze erstellen
  • Alle Datensätze bearbeiten
  • Eigene Datensätze veröffentlichen

Der API Key wird nun als Umgebungsvariable benötigt.

Umgebungsvariablen einrichten

Als nächstes müssen die Umgebungsvariablen definiert werden. Dafür sollte im Root-Verzeichnis eine .env Datei erstellt werden mit dem folgenden Inhalt, bzw. falls schon eine solche Datei existiert, die folgenden Zeilen ergänzt und ausgefüllt werden.

API_KEY=your_api_key

PROXY_USER=your_proxy_user
PROXY_PASSWORD=your_proxy_password
PROXY_ADDRESS=your_proxy_address
PROXY_PORT=your_proxy_port

ODS_DOMAIN=data.bs.ch
ODS_API_TYPE=automation/v1.0

Verwendung

Hier ein einfaches Beispiel, um die Anzahl der Datensätze abzurufen:

import ods_utils_py as ods_utils

num_datasets = ods_utils.get_number_of_datasets()
print(f"Derzeit haben wir {num_datasets} Datensätze.")

Falls eine gewünschte Funktion nicht existiert, kann sie über _requests_utils implementiert werden:

import ods_utils_py as ods_utils

antwort = ods_utils._requests_get("https://www.example.com")
print(antwort.text)

Hinweis: Die meisten dieser Funktionen sollten dann langfristig in ods_utils_py integriert werden.


Weiterführende Links

Die vollständige Dokumentation der Automation API 1.0 ist hier zu finden.

Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert. Siehe die LICENSE Datei im Repository für den vollständigen Lizenztext.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ods_utils_py-0.1.1.tar.gz (11.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ods_utils_py-0.1.1-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

Details for the file ods_utils_py-0.1.1.tar.gz.

File metadata

  • Download URL: ods_utils_py-0.1.1.tar.gz
  • Upload date:
  • Size: 11.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for ods_utils_py-0.1.1.tar.gz
Algorithm Hash digest
SHA256 27869c193d7d77fdc67e0936eaebea0afa1f32b4db304ade160a0591c5890742
MD5 72a5d514182bb5f7aa9af93be8f81763
BLAKE2b-256 7810ccb2f36ef42c15ee8ba9be4f0de3848a7ac2d2300534c585707eeb1d1e0b

See more details on using hashes here.

File details

Details for the file ods_utils_py-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: ods_utils_py-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 11.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for ods_utils_py-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2b2db1920d5aa35314477e43cf7830d13678487513a434077ddba0c79e5ced86
MD5 1c5ac29d99afa0cf486180ebce1839d8
BLAKE2b-256 dd89153eed11b513209f59c6684eb3e0a24e6ed5f32bdae2ce5af0f0f9f00dfe

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page