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

Uploaded Python 3

File details

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

File metadata

  • Download URL: ods_utils_py-0.1.4.tar.gz
  • Upload date:
  • Size: 11.2 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.4.tar.gz
Algorithm Hash digest
SHA256 f212d567fddbe2c7d5eb50ceca1e1ea545a4afef942af7e513c39672ad7dc66d
MD5 281d99e17ce1b4086b04461b381e1efb
BLAKE2b-256 e03c5328b917f6acdcf07fdafd6873da861ce5db03c5bd1801aafe5da613b924

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ods_utils_py-0.1.4-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.11.9

File hashes

Hashes for ods_utils_py-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 40b6274df37b2693bf675cfab9253a4aec2df4f22b28c0fbf477f004c7c3bc9e
MD5 7fd3219f2885643e7ed54bf32d7dd0cd
BLAKE2b-256 b1e3080c609671a311fb80b77016f029d5e2c1fa3e5af15b0ea4ed368202ce30

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