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

Uploaded Python 3

File details

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

File metadata

  • Download URL: ods_utils_py-0.1.7.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.7.tar.gz
Algorithm Hash digest
SHA256 8a025e449d25e755d3b5a3f7d14ac73aeffb6dfa340feac39a2c483d06c76775
MD5 2bc67490371795e86338a9aee62b5b68
BLAKE2b-256 8b7f19e3d692fb5a3da9c9e06b4232baf10d9d43d0a47ed35ed5281d54244b6c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ods_utils_py-0.1.7-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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 9236860ffc4ec850502811263ee780d43f73de2b4597f7669a61ce9858d35941
MD5 bed7df2b7de3a9fff05c8b15f8d727b2
BLAKE2b-256 2eb26457d3bcb33e6967fa8c78d3da94a29407e00f5a84f625a0a359092fb661

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