Datenabfrage-Abfrage leicht gemacht

KNIME und der Sistrix API

Michael Hohenleitner
Michael Hohenleitner

Michael Hohenleitner (geb. Göpfert) ist einer von vier geschäftsführenden Gesellschaftern der Agentur StrategieVier und als SEO-Berater und Freelancer tätig. Sein Steckenpferd ist dabei die Arbeit mit großen Datenmengen aus Crawls und der Search Console. Wenn ihm dabei die Standard-Reports der Tools nicht ausreichen, greift er auf eigene Workflows in KNIME oder Python zurück, um datengestützte Entscheidungen treffen zu können.

Mehr von diesem AutorArtikel als PDF laden

Sie glauben, Daten über APIs abzufragen, ist nur etwas für Programmierer? Weit gefehlt. Mit KNIME lassen sich APIs ganz einfach und ohne Programmierung per POST Request abfragen und in eine Tabelle integrieren, bei voller Flexibilität. Erfahren Sie in diesem Beitrag, wie einfach die Sistrix-API mit KNIME abgefragt werden kann und wie Sie dabei wertvolle Zeit sparen.

Der Sistrix-Sichtbarkeitsindex ist eine in der SEO-Branche weitverbreitete Metrik und er ist für viele die erste Wahl, wenn es darum geht, die Reichweite einer Website in der Google-Suche zu prüfen. Neben dem reinen Sichtbarkeitsindex stellt Sistrix zahlreiche weitere Metriken zur Verfügung, die für einen Audit der eigenen oder einer fremden Website interessant sind. So lässt sich sowohl auf Domain- als auch auf URL-Ebene prüfen, für wie viele Keywords eine Domain in den Top 100 oder den Top 10 rankt.

Die meisten SEOs nutzen für diese Analysen das Webinterface von Sistrix. Dabei stellt der Anbieter auch eine einfach zu bedienende API zur Verfügung. Mit dieser lassen sich Abfragen, die sonst mühevoll einzeln durchgeführt werden müssten, automatisieren. Mit dem kostenlosen Datenanalysetool KNIME lässt sich in wenigen Schritten und ohne Programmierkenntnisse ein Workflow erstellen, der für eine beliebige Menge URLs Daten per Sistrix-API ermittelt.

Credits

Die Sistrix-API funktioniert über ein Credit-System. Für jedes bezahlte Sistrix-Modul werden pro Woche 10.000 Credits für API-Abfragen zur Verfügung gestellt. Wie viele Credits pro Abfrage benötigt werden, hängt von der Anzahl der Daten ab, die erhoben werden. Dies ist in der Beschreibung der einzelnen Abfragemethoden in der Dokumentation unter www.sistrix.de/api/ beschrieben.

URL-Liste auf Top-10-Rankings prüfen

Angenommen, Sie möchten eine Liste mit URLs (beispielsweise aus einem Screaming Frog Crawl) auf die Anzahl der Top-10-Rankings mithilfe der Sistrix-API prüfen. Dazu benötigen Sie eine KNIME-Installation, einen Zugang zu Sistrix mit mindestens einem aktiven Modul und eine CSV-Datei mit den URLs, die geprüft werden sollen.

Erstellen Sie in KNIME einen neuen Workflow und ziehen Sie die CSV-Datei per Drag-and-drop auf die Arbeitsfläche. KNIME erstellt nun automatisch eine Node vom Typ CSV-Reader auf ihrer Arbeitsfläche und es öffnet das Konfigurationsmenü (Abb. 1).

Dort sehen Sie eine Vorschau, wie die Daten in KNIME importiert werden. Die Software ermittelt dabei selbst, wie die CSV-Datei aufgebaut ist, weshalb meistens keine Anpassungen in den Einstellungen nötig sind. Sehen die Daten im Bereich Preview gut aus, kann das Menü geschlossen und die Node ausgeführt werden. Durch einen Rechtsklick auf die Node und den Befehl Execute werden die Daten in KNIME importiert.

Um schnell sehen zu können, wie die Daten in KNIME aussehen, aktivieren Sie im Menü von KNIME unter dem Punkt View den Node Monitor. Nun sehen Sie unterhalb der Arbeitsfläche beim Klicken auf eine Node stets eine Vorschau der verarbeiteten Daten.

Im nächsten Schritt wird an die importierte Tabelle mit den URLs eine weitere Spalte angehängt, die die URL enthält, mit der die Sistrix-API abgefragt wird. Ziehen Sie dazu eine Node mit der Bezeichnung Constant Value Column auf die Arbeitsfläche und verbinden Sie diese mit der Node CSV-Reader, indem Sie die schwarzen Dreiecke per Drag-and-drop miteinander verbinden. Mit dieser Node können Sie eine neue Spalte erzeugen (oder eine bestehende überschreiben), die einen konstanten, von Ihnen vorgegebenen Wert enthält.

Die Node Constant Value Column wird nun per Doppelklick wie folgt konfiguriert (Abb. 2):

  • Column Settings: Wählen Sie Append und geben Sie in das Feld einen Namen für die neue Spalte, z. B. API-URL, an.
  • Value Settings: Das Auswahlmenü bleibt auf „String“ und in das Feld wird nun die URL eingetragen, die die Daten von Sistrix ermittelt. Diese ist wie folgt aufgebaut:

    api.sistrix.com/abfragemethode ?api_key= [IHR_API_KEY]&url.

    Die URLs, für die die Daten abgefragt werden sollen, sind bereits mit der CSV-Datei in KNIME importiert worden und sie werden im nächsten Schritt an die API-URL angehängt. Deshalb reicht es zunächst, die Abfragemethode und den API-Key anzugeben. Um mehr Daten zu erhalten und diese einfacher verarbeiten zu können, sollten die Parameter &extended=true (mehr Daten) und &format=json (gibt die Daten im JSON-Format zurück) in die Abfrage-URL aufgenommen werden. Eine finale Abfrage-URL sollte also wie folgt aussehen:
    api.sistrix.com/domain.kwcount.seo.top10[IHR_API_KEY]&extended=true&format=json&url=.

Um die Daten abzufragen, benötigen Sie ihren persönlichen API-Schlüssel, den Sie unter app.sistrix.com/account/api kopieren können und den Sie an der Stelle [IHR_API_KEY] einfügen.

Bevor die API-URL und die URL, für die die Rankings ermittelt werden sollen, verbunden werden können, muss zunächst mit der Node Column Resorter die Reihenfolge der Spalten angepasst werden. Wichtig hierbei ist, dass die Spalte API-URL vor der Spalte mit der abzufragenden URL steht (Abb. 3).

Abfrage-URLs für die API automatisch erstellen

Nun können beide Spalte mit der Node Column Aggregator aggregiert werden. Verschieben Sie dabei in der Konfiguration der Node alle Spalten außer der Spalte API-URL und der Spalte Address aus dem grünen in den roten Bereich, um nur die beiden Spalten bei der Aggregation zu berücksichtigen (Abb. 4). Wechseln Sie nun in den Tab Options und wählen Sie Concatenate und entfernen Sie im Feld Valiue delimiter das Komma, sodass dieses Feld leer ist.

Nach dem Ausführen der Nodes sehen Sie nun in der Tabelle eine neue Spalte mit dem Namen Concatenate. Sie enthält die zusammengeführten Daten aus API-URL und der URL, für die die Daten ermittelt werden sollen.

Um die Namen der Spalten übersichtlich zu halten, kann die neu erzeugte Spalte mit der Node Column Rename umbenannt werden, beispielsweise in den aussagekräftigeren Namen Abfrage URL (Abb. 5). Öffnen Sie dazu die Einstellungen der Node und klicken Sie doppelt auf die umzubenennende Spalte (in diesem Fall Concatenate). Sie erscheint nun in der rechten Spalte und sie kann mit einem neuen Namen versehen werden.

API-Daten per POST Request abfragen

Nun ist es an der Zeit, endlich die Daten bei Sistrix abzufragen. Dazu ergänzen Sie den Workflow um die Node POST Request. Mit einem POST Request können Daten (z. B. aus einem Kontaktformular) an einen Webserver gesendet und empfangen werden. Die Node sendet also die Abfrage-URL an den Sistrix-Server und dieser antwortet mit den abgefragten Daten.

In der Konfiguration der Node wählen Sie lediglich die Spalte mit der Abfrage-URL aus (Abb. 6). Nach dem Ausführen der Node enthält der Workflow eine weitere Spalte (body), in der die Daten aus der Sistrix-API im JSON-Format enthalten sind.

In einem Schritt: JSON-Daten als Tabellenspalten

Um die JSON-Daten aufzubereiten, dient die Node JSON to Table. Bei dieser Node muss nichts konfiguriert werden. Sie muss lediglich an den Workflow angehängt und ausgeführt werden. Die Node konvertiert den Inhalt der Spalte mit den JSON-Daten in mehrere Spalten. Anschließend gibt es für jeden Wert, den die API ausgibt, eine neue Spalte in der Tabelle (Abb. 7).

Die Anzahl an Keywords, für die jede abgefragte URL in den Top 10 rankt, finden Sie in der Spalte value. Außerdem werden noch Informationen über die Anzahl der verwendeten Credits (Spalte used), das Abfragedatum, die abgefragte URL, die Abfragemethode und einige weitere als eigene Spalten anzeigt.

Um die Tabelle übersichtlich zu halten, können Sie bei Bedarf mit der Node Column Filter nicht benötigte Spalten herausfiltern oder mit der Node Sorter die Tabelle nach Werten, wie der Anzahl der Rankings sortieren. Anschließend lassen sich die Daten als Balkendiagramm visualisieren (Node: Bar Chart).

Fazit

Dies war nur ein Beispiel, wie Daten aus der Sistrix-API in KNIME genutzt werden können. In der Dokumentation der API unter www.sistrix.de/api/ sind viele weitere Möglichkeiten, die API abzufragen, aufgeführt. Mit wenigen Handgriffen lässt sich der KNIME-Workflow auch auf andere Abfragemethoden (z. B. den Sichtbarkeitsindex) anwenden. Probieren Sie es aus. Wie immer gibt es diesen Workflow auch als Download unter: kni.me/w/kcXTQrCIFQLsK9Tb.