Zum Inhalt

Integration in dssCode (Plattform zur Kodierung)

Zugang über dsstools

Wenn du einen Graph importieren möchtest, der zuvor in dssCode kodiert wurde, gehe dazu in dssCode in deine Profileinstellungen und kopiere das dortige API-Token. Das ist der Schlüssel für den Zugriff auf die Plattform aus Python heraus.

Warnung

Committe diesen Schlüssel niemals in Repositories!

Deshalb wollen wir unbedingt vermeiden, das Token in unser Skript zu schreiben. Stattdessen müssen wir es anderweitig übergeben. Das lässt sich am besten über eine sogenannte Umgebungsvariablen erledigen. Eine Umgebungsvariable besteht aus einem Schlüssel und einem Wert, ähnlich wie Items in einem Dictionary in Python.

Für das Token heißt der Schlüssel API_TOKEN und der Wert ist der zuvor aus dssCode entnommene Wert für das Token. Falls du eine IDE verwendest, findest du dazu häufig eine Erklärung des Editors. Hier einige Erklärungsseiten für das Setzen von Umgebungsvariablen von verbreiteten IDEs:

  • Pycharm
  • VS Code
  • Spyder unterstützt anscheinend derzeit nicht das Setzen von Umgebungsvariablen.

.env

Darüber hinaus gibt es noch eine weitere Möglichkeit, die unabhängig vom Editor funktioniert: Das Erstellen einer .env-Datei. Diese Datei besteht aus einer Liste von Umgebungsvariablen, die untereinander geschrieben werden.

Hinweis

.env kann auch für Solr genutzt werden (siehe unten).

Der Inhalt der .env sieht wie folgt aus:

API_TOKEN=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

Weitere verwendete Variablen können darunter geschrieben werden. Variablen aus .env werden gegenüber allgemeinen Umgebungsvariablen vorgezogen.

Achtung

In deinem Skript muss explizit load_dotenv() aufgerufen werden:

from dotenv import load_dotenv
load_dotenv()

Projekt-Slug

Weiterhin benötigst du von dssCode das sogenannte Projekt-Slug. Das ist ein menschenleserlicher String, der keine Leerzeichen oder Sonderzeichen enthält. Wenn du dich in der Projektübersicht befindest, steht der Slug in deiner Adresszeile des Browsers:

In diesem Beispiel wäre das sustainable_investment.

Snapshot

Snapshots dienen dazu, einen festgelegten Zustand aus dssCode zu erhalten. Die Erstellung eines solches Snapshots funktioniert in dssCode über Projektübersicht -> Snapshots -> Snapshot anlegen. Danach erscheint ein neuer Eintrag in der Tabelle darunter. Diese ID muss kopiert werden und ist unser Wert für snapshot in Python.

Hinweis

Diese Snapshot-ID kann committet werden. Das ist sogar sinnig, da andere Personen in deinem Team dann denselben Zustand in ihrem Netzwerk erhalten.

Anwendung

Ein simpler Aufruf sähe dann so aus:

G = dts.import_from_dsscode(
    "sustainable_investment",
    "hhhhhhhhhhhhhhhhhh" # (1)
)
  1. Platzhalter für die Snapshot-ID

Das kann je nach Größe des Graphs etwas dauern. Standardmäßig wird dieser Aufruf gecached, was bedeutet, das nicht bei jedem Aufruf erneut die API aufgerufen wird. Das reduziert die Last auf dem Server. Dazu musst du aber nichts weiter tun.