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.5.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.5-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ods_utils_py-0.1.5.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.5.tar.gz
Algorithm Hash digest
SHA256 a39f1932293cffdd376d104ae76c1077502a2b31e3974a2792a06fbd6ec97d65
MD5 e89fa747b6ff01eb4cfdeb9741711811
BLAKE2b-256 e3da5ab1e4da288e4c7a6684d9216a7bd9206571b045cdfa7703adfc1ebb2e3d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ods_utils_py-0.1.5-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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 fbdd83dad9a66c3767d8c2ee2515456e2db479e1d8a0465668dc5a152bf0fd3d
MD5 52928a14939148419a3f00bbe3894d32
BLAKE2b-256 0dc10c65e0b8826c386d478b03db06fd3d4429ee7120b8dc2f16f35ef4d8d353

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