Überprüfen Sie Ihre Website-Backlinks in n8n oder in reinem Python?
Eine Canvas mit 25 Knoten für einen dreistufigen Job ist ein häufiges Bedauern. Ein Skript, das niemand anderes bearbeiten kann, ist das andere. Nutzen Sie den Baum.
Redaktion von Linkzoid ·
Entscheidungsbaukasten, von oben nach unten
Wird der Flow von einer Person ohne technisches Know-how bearbeitet oder deren Läufe gelesen? Wählen Sie n8n oder Make.
Passt der Job in 60 Zeilen und lebt sowieso in einem Repo? Wählen Sie Python.
Brauchen Sie einen Slack-Post und eine Tabellenzeile, aber kein Diffing? Wählen Sie n8n mit einem HTTP-Request-Knoten.
Diffen Sie Dutzende von Domains, pflegen Sie Historie oder testen Sie Parser unitär? Wählen Sie Python mit SQLite.
Zahlt das Team bereits für n8n-Cloud-Ausführungen? Zählen Sie diese: Eine Schleife über 40 Domains kann einen Plan auslaugen.
Passt nichts davon? Starten Sie mit curl in einem Shell-Skript und sehen Sie, was wehtut.
Wenn ein visueller Flow seinen Platz verdient
Eine Canvas ist in einigen Jobs ihre Unordnung wert. Wenn eine Person ohne technisches Know-how jeden Schritt und dessen letzten Lauf sehen muss, schlägt ein visueller Flow ein Repo, das sie nie öffnen wird. Halten Sie es kurz.
Die meisten Backlink-Jobs bestehen aus einem Fetch, einer Prüfung und einem Write. Vier Knoten erledigen das gut. Wenn Ihr Job darin besteht, die Backlinks Ihrer Website monatlich für einen Kunden zu prüfen, passt diese Form auf eine Canvas. Die Probleme beginnen, wenn jemand Paging, Retries und ein Diff hinzufügt, weil jeder davon seine eigene Verzweigung mit sich bringt.
Wählen Sie die Canvas für den Leser, nicht für den Schreiber.
Wer den Flow liest
Marketing- und Vertriebsmitarbeiter lesen einen Flow an seinen Outputs, und sie wollen den letzten Lauf klar sichtbar haben. Eine Canvas gibt ihnen das ohne Ticket. Sie lesen den Output, nicht den Code. Ein Skript gibt ihnen eine Protokolldatei, die sie nicht öffnen werden.
Geben Sie dem Flow einen klaren Namen und eine einzeilige Beschreibung, damit der nächste Leser weiß, was er verspricht, bevor er ihn öffnet. Ein Knoten mit einer vagen Bezeichnung kostet mehr Zeit als jede fehlende Funktion.
Verzweigungen, die auf einen Blick erkennbar sind
Ein IF-Knoten auf ok ist leicht zu verfolgen. Drei davon auf einer Seite sind noch lesbar, wenn jeder Zweig einen klaren Namen hat. Darüber hinaus kreuzen sich die Linien, und ein Prüfer braucht zehn Minuten, um sicher zu sein, welcher Zweig bei einem leeren Ergebnis ausgelöst wird.
Wo eine Canvas zur Last wird
Schleifen über viele Domains, gemeinsamer Zustand zwischen Läufen und Unit-Tests sind die üblichen Engpässe. Eine Canvas löst jeden mit einem Workaround, und jeder Workaround ist eine Stelle, an der der Flow von Ihrer Intention abweichen kann.
Wenn Sie feststellen, dass Sie JSON exportieren müssen, um einen Flow zu reparieren, hat der Job die Canvas überholt. Verschieben Sie die Logik in Code und behalten Sie die Canvas für die Benachrichtigung.
Die n8n-Einrichtung in vier Zeilen
Ein HTTP-Request-Knoten, Methode GET, URL https://linkzoid.pro/api.php. Fügen Sie die Query-Parameter action, q, key hinzu. Jeder, der so die Backlinks seiner Website prüfen möchte, kann dies in fünf Minuten kopieren.
Speichern Sie den Key in den Credentials, nicht im Knoten. Fügen Sie einen IF-Knoten auf ok hinzu und leiten Sie den false-Zweig in einen Error-Workflow, der Sie anpingt.
Teilen Sie das rows-Array mit einem Item Lists- oder Split Out-Knoten, und schreiben Sie dann in Google Sheets oder Postgres. Achten Sie auf die Ausführungsanzahlen, da jeder Item auf manchen Plänen als Schritt abgerechnet werden kann.
Das ist der ganze Job. Er bricht, wenn Pagination einzieht: Schleifen in n8n funktionieren, sehen aber jenseits von etwa zehn Knoten schlecht aus.
Erstellen Sie den n8n-Flow in fünf Knoten
Jeder Knoten erledigt eine Aufgabe, und jeder kann einzeln getestet werden, bevor der nächste hinzugefügt wird.
01
Erstellen Sie den HTTP-Request-Knoten
Methode GET und die URL https://linkzoid.pro/api.php. Fügen Sie action, q und per als Query-Parameter hinzu und lassen Sie den Key für den nächsten Schritt offen.
02
Hängen Sie den Key als Credential an
Speichern Sie ihn in den n8n-Credentials und referenzieren Sie ihn aus der Query. Ein Key, der direkt in das URL-Feld getippt wird, kann in Logs und Exporten landen.
03
Trennen Sie basierend auf dem ok-Flag
Fügen Sie einen IF-Knoten hinzu, der ok ausliest. Senden Sie den false-Zweig in einen Error-Workflow, der den Antworttext an einer Stelle veröffentlicht, die Sie sehen werden.
04
Teilen Sie die Zeilen
Verwenden Sie Split Out für das rows-Array, damit jede Domain ihr eigenes Item wird. Schreiben Sie diese Items in ein Sheet oder eine Tabelle, nicht die gesamte Antwort in eine Zelle.
05
Testen Sie zuerst mit der kostenlosen Aktion
Richten Sie den Knoten auf overview ein, was keinen Key benötigt, und bestätigen Sie die Form der Antwort, bevor Sie zu einer kostenpflichtigen Aktion wechseln.
Fehlerbehebungstabelle
Symptom
n8n-Ursache
Python-Ursache
Nur 10 Zeilen kommen an
Kein per-Parameter im Knoten gesetzt
Gleiches, prüfen Sie die Query-String
Lauf erfolgreich, Sheet leer
Zeilen nicht in Items aufgeteilt
Das Dict statt rows geschrieben
402 nach einer Woche
Workflow-Schleife auf einem Trigger
Cron feuert zweimal
Key in Logs geleakt
In das URL-Feld eingefügt
Vollständige URL ausgegeben
Monatsüber-Monat-Lücken
Execution-Retention hat alte Läufe gelöscht
Historie nie gespeichert
Kosten pro Lauf
Auf unserer Seite sind die Kosten in beiden Fällen gleich: 2 Credits für eine Refdomains-Seite. Der Unterschied liegt beim Ersteller.
Ein selbst gehostetes n8n ist kostenlos im Betrieb. Cloud-Pläne zählen Ausführungen. Ein einfaches Skript auf Cron kostet nichts.
Egal was Sie wählen, bewahren Sie eine datierte Kopie jedes Laufs außerhalb des Tools auf. Wöchentliche Snapshots in Actions sind ein ordentlicher Ort dafür, und der Suite-Vergleich erklärt, warum Ihre eigene Historie wertvoll ist.
Zählen Sie Ausführungen pro Domain
Eine Schleife über vierzig Domains ergibt vierzig Läufe auf einem Plan, der Ausführungen zählt. Prüfen Sie, wie Ihr Plan eine Schleife zählt, bevor Sie sie planen, denn die Rechnung folgt der Anzahl, nicht den Credits.
Schreiben Sie die erwartete Anzahl neben den Zeitplan. Eine Überraschung auf der Rechnung ist leichter zu erklären, wenn die Schätzung bereits in der Datei stand.
Self-Hosting hat seine eigenen Kosten
Ein selbst gehostetes n8n kostet den Server, die Upgrades und die Backups. Die Datenbank müssen Sie am Leben erhalten. Ein einfaches Skript auf einer kleinen Maschine hat weniger bewegliche Teile, was ein Grund ist, es für einen festen monatlichen Job zu wählen.
Was normalerweise zuerst kaputtgeht
In n8n sind es Pagination und Item-Anzahlen. In Python ist es das Ding, das niemand getestet hat: ein leeres rows, ein Timeout, ein Feld, das anders benannt ist als angenommen.
Keines der Tools ist falsch. Wählen Sie basierend darauf, wer das Ding in sechs Monaten wartet. Wenn das Sie allein sind, ist Code einfacher zu durchsuchen. Wenn es ein Marketing-Team ist, das bereits in der Canvas lebt, schlägt ein kleiner Flow, den sie sehen können, ein Repo, das sie fürchten.
Gemischte Setups funktionieren ebenfalls. Lassen Sie Python die CSV planen und n8n die Datei lesen und an Slack posten. Jedes Tool erledigt den Teil, den es am besten beherrscht, und keiner der Flows wächst über zehn Schritte hinaus.
Die Python-Version lesbar halten
Der übliche Fall für Code ist, dass jemand anderes ihn in sechs Monaten ändern muss. Machen Sie das einfach. Ein kurzes Skript mit klaren Namen und einer gespeicherten Antwort schlägt einen cleveren One-Liner, den sich niemand zu berühren traut.
Testen Sie den Parser an einer gespeicherten Antwort
Speichern Sie eine echte Antwort in einer Datei und richten Sie einen Unit-Test darauf ein. Der Parser läuft dann ohne Credit-Kosten, und ein umbenanntes Feld schlägt im Testlauf fehl, statt am Montagmorgen.
Halten Sie die gespeicherte Antwort klein, da ein Dutzend Zeilen ausreichen. Notieren Sie das Datum, an dem Sie sie erstellt haben, damit Sie wissen, wann sich die Feldnamen zuletzt geändert haben.
Halten Sie die Einstellungen an einem Ort
Domains, Aktionen und die Seitengröße gehören in einen kleinen Config-Block, nicht über das Skript verteilt. Ein Kollege kann dann die Zielliste ändern, ohne die Logik zum Parsen der Zeilen zu berühren.
Halten Sie Secrets ebenfalls aus diesem Block heraus. Laden Sie sie aus der Umgebung, genau wie der Key geladen wird.
Führen Sie eine zweiwöchige Testphase durch, bevor Sie sich festlegen
Legen Sie dies nicht nur auf dem Papier fest. Bauen Sie die kleinste Version des Jobs in jedem Tool, führen Sie sie zwei Wochen lang täglich aus und sehen Sie, welches Sie ohne Aufforderung öffnen.
Schauen Sie, was kaputtgeht. Zählen Sie die Male, an denen Sie etwas manuell bearbeiten mussten, und die Male, an denen die Ausgabe falsch war, ohne einen Fehler. Das Tool, das weniger manuelle Korrekturen erfordert, ist das, das Sie behalten sollten.
Protokollieren Sie jede manuelle Korrektur
Führen Sie eine einfache Notiz über jedes Mal, an dem Sie den Flow oder das Skript manuell berührt haben. Eine kurze Liste nach zwei Wochen sagt Ihnen mehr aus als jede Funktionstabelle.
Notieren Sie, wer Änderungen angefordert hat
Wenn die Anfragen von Personen kamen, die keinen Code lesen können, gewinnt die Canvas. Wenn sie von Ihnen kamen, ist das Repo leichter zu ertragen.
Beide Antworten sind in Ordnung, solange Sie darauf verweisen können. Schreiben Sie den Grund neben den Flow oder das Repo und überdenken Sie ihn, wenn der Job wächst.
Kurze Antworten für Ersteller
Funktioniert Make oder Zapier mit dieser API?
Ja. Alles, was einen HTTPS GET mit Query-Parametern senden kann, funktioniert, einschließlich Make, Zapier, Pipedream und Apps Script. Verwenden Sie das generische HTTP-Modul, legen Sie den Key in einer gespeicherten Verbindung ab und lesen Sie das JSON rows-Array im nächsten Schritt.
Kann ein AI-Agent es stattdessen aufrufen?
Technisch ja, da es eine einfache HTTP-API ist. Für einen festen monatlichen Job ist ein Skript günstiger und vorhersehbarer, und ein Agent fügt eine Modellrechnung und die Chance auf einen falschen Parameter hinzu. Verwenden Sie einen Agent nur für Ad-hoc-Fragen.
Was ist der günstigste Weg, um zu starten?
Ein Shell-Skript mit curl und der kostenlosen Overview-Aktion, ausgeführt von Cron. Kein Key, keine Kosten, und Sie lernen die Form der Antwort kennen. Wechseln Sie zu Python, wenn das erste unangenehme JSON-Parsing auftaucht.