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.

ODS_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.6.tar.gz (11.4 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.6-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for ods_utils_py-0.1.6.tar.gz
Algorithm Hash digest
SHA256 b4437542a39d3eb8fb7ed42afa1bf9b81907ac7b94e922165e66dea64badedc3
MD5 f6d1616e00d4e5806396374f4fb1d1fb
BLAKE2b-256 c67439d69938c9ce9f8bb5b0a1d30cef65849bd9c409f1394c8abf561f773103

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for ods_utils_py-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 3abb905236b3d3310e184930b84d77af329046601189dcfc0971d880a0bc393a
MD5 9907d5e23d6caec759400021cb08fa73
BLAKE2b-256 e17a3bbe76ff895006c304a92a03f1dd59fbd073725d10b7dea5e06ca4fae29e

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