jsonscraper
Märkte
Zurück zum Journal

IG-Profile anhand überprüfbarer Felder mit Kampagnenbriefings abgleichen

So wird aus einer Kontoliste mit der IG Scraper API und Python eine reproduzierbare Prüfung

Redaktionsrichtlinie Fehler melden

Vor dem Start einer Kampagne lassen sich die IG-Konten aus dem Briefing automatisch mit öffentlich verfügbaren Profildaten abgleichen. So werden Abweichungen beim Username, ein privater Status, Änderungen an Name oder Biografie und eine außerhalb des erwarteten Bereichs liegende Beitragszahl sichtbar. Das Ergebnis ist eine Prüftabelle für das Marketingteam – keine automatische Entscheidung über die Eignung eines Creators.

Artikel: IG-Profile anhand überprüfbarer Felder mit Kampagnenbriefings abgleichen
Zusammenfassung: Prüfen Sie öffentliche IG-Profile vor dem Kampagnenstart: Rufen Sie Daten anhand des Usernames ab, gleichen Sie sie mit dem Briefing ab und erstellen Sie einen Abweichungsbericht, ohne fehlende Daten durch Nullen zu ersetzen.
Bildrolle: Titelbild – die zentrale Idee
Abschnitt: 
Visuelles Motiv: Redaktionelles Foto: gedrucktes Influencer-Kampagnenbriefing und ein kompakter CSV-Prüfbericht auf einem Schreibtisch; Profildaten werden durch schlichte, neutrale Karten dargestellt.
Die Prüfung gleicht die Vorgaben des Briefings mit konkreten öffentlichen Profilfeldern ab.© jsonscraper · KI-generiert

Das Problem: Ein Briefing veraltet schneller als die Tabelle

Eine Kampagnenliste kann den Kontonamen, einen Link, einen Richtwert für die Followerzahl und Anforderungen an ein öffentliches Profil enthalten. Diese Angaben können leicht auseinanderlaufen: Ein Konto ändert seinen Username, das Profil wird privat und die Zahlen im Briefing bleiben unverändert. Ein einzelnes Profil manuell zu prüfen ist einfach; eine Kontoliste vor jeder Kampagne erneut zu prüfen, ist dagegen schwieriger zu kontrollieren und reproduzierbar zu gestalten.

Hilfreich ist es, für jede Zeile klare Regeln festzulegen, die verfügbaren öffentlichen Felder zum Prüfzeitpunkt abzurufen und Soll- und Ist-Werte nebeneinander zu speichern. „Übereinstimmung“ bedeutet dann lediglich, dass ein bestimmtes Feld einer bestimmten Regel entspricht. Ob die Zielgruppe passt oder die Inhalte qualitativ überzeugen, beurteilt weiterhin eine Fachkraft.

Welche Daten abgerufen werden sollten

Die Dokumentation der IG-API-Endpunkte beschreibt die Route GET /v1/user/by/username mit dem erforderlichen Parameter username. In einer geprüften Antwort liegen die Profildaten im Objekt ig: Dazu gehören Username, vollständiger Name, Biografie, Angaben zu Privatheit und Verifizierung sowie die Zahl der Beiträge, Follower und gefolgten Konten. Diese Felder beschreiben eine verfügbare Momentaufnahme des Profils.

Für eine Vorabprüfung reicht das aus, um Kontoname, Privatsphäre und numerische Schwellenwerte abzugleichen. Die Biografie kann der prüfenden Person zur Ansicht angezeigt oder nach einer einfachen Regel geprüft werden, etwa auf das Vorkommen eines erforderlichen Begriffs. Ein solcher Textfilter erkennt eine Zeichenfolge, bewertet aber nicht deren Bedeutung und bestätigt für sich genommen auch nicht, dass vertragliche Bedingungen erfüllt sind.

So binden Sie die Anfrage in Python ein

Speichern Sie zunächst den Lizenzschlüssel in der Umgebungsvariable JSONSCRAPER_INSTAGRAM_LICENSE_KEY. Das Beispiel verwendet die bestätigte Basis-URL, Route, den Parameter username und den Schlüsselparameter license_key. Die CSV-Datei enthält die Felder username,min_followers,max_followers,require_public. Für jedes Konto vergleicht das Skript die Antwort mit den Regeln und kennzeichnet Zeilen, die überprüft werden müssen.

import csv
import os
import sys
import requests

BASE_URL = "https://ig.jsonscraper.com"
API_KEY = os.environ.get("JSONSCRAPER_INSTAGRAM_LICENSE_KEY")
if not API_KEY:
    raise SystemExit("Set JSONSCRAPER_INSTAGRAM_LICENSE_KEY")

# brief.csv: username,min_followers,max_followers,require_public
with open("brief.csv", newline="", encoding="utf-8") as source:
    brief = list(csv.DictReader(source))

results = []
for row in brief:
    username = row.get("username", "").strip()
    minimum_text = row.get("min_followers", "").strip()
    if not username or not minimum_text:
        results.append({
            "requested_username": username,
            "needs_review": True,
            "error": "Missing username or min_followers",
        })
        continue

    try:
        response = requests.get(
            f"{BASE_URL}/v1/user/by/username",
            params={"username": username, "license_key": API_KEY},
            timeout=30,
        )
        response.raise_for_status()
        payload = response.json()
        if payload.get("status") != "ok" or not isinstance(payload.get("ig"), dict):
            raise ValueError("Unexpected API response")
        profile = payload["ig"]

        followers = profile.get("follower_count")
        minimum = int(minimum_text)
        maximum_text = row.get("max_followers", "").strip()
        maximum = int(maximum_text) if maximum_text else None
        public_required = row.get("require_public", "").strip().lower() == "true"

        checks = {
            "username_matches": (
                isinstance(profile.get("username"), str)
                and profile["username"].lower() == username.lstrip("@").lower()
            ),
            "followers_in_range": (
                isinstance(followers, int)
                and followers >= minimum
                and (maximum is None or followers

Starten Sie das Skript mit python check_profiles.py. Installieren Sie die Bibliothek requests, setzen Sie die Umgebungsvariable in der Laufzeitumgebung und legen Sie brief.csv im selben Verzeichnis ab. Schreiben Sie den Schlüssel weder in den Quellcode noch in die fertige CSV-Datei. Das Skript verarbeitet die Liste nacheinander – praktisch für Prüfung und Fehlersuche bei kleineren Kontolisten.

Warum fehlende Werte sichtbar bleiben sollten

Bei den Prüfregeln ist es wichtig, zwischen dem Wert null und einem fehlenden Feld zu unterscheiden. Im Beispiel gilt die Followerzahl nur dann als passend, wenn ein numerischer Wert vorliegt. Fehlt der Zähler, ist die Bedingung nicht bestätigt und der Eintrag wird zur manuellen Prüfung vorgemerkt. Auch ein leerer Schwellenwert für min_followers wird als Eingabefehler gekennzeichnet und nicht automatisch in null umgewandelt.

Die Prüfung der Antwort sollte Teil des Arbeitsablaufs sein. Zuerst vergewissert sich das Skript, dass der externe Status ok lautet; anschließend prüft es, ob das Objekt ig vorhanden ist. HTTP-Fehler, unerwartetes JSON oder ungültige Regeln erscheinen im Bericht, ohne den Ausnahmetext auszugeben, der den Schlüssel in der URL offenlegen könnte. So kann die prüfende Person einen Anfragefehler von einer Profilabweichung unterscheiden, ohne das Geheimnis preiszugeben.

Ergebnisse auswerten und Prüfungen automatisieren

Die Datei profile_check.csv enthält den angefragten Username, den zurückgegebenen Namen, verfügbare öffentliche Felder, die Ergebnisse einzelner Bedingungen und das Gesamtkennzeichen needs_review. Das Team kann die Zeilen anhand dieses Kennzeichens filtern; Entwicklerinnen und Entwickler können den Bericht in einem Speicher ablegen oder an den nächsten Schritt eines ETL-Prozesses weitergeben. Für regelmäßige Ausführungen planen Sie das Skript über einen Scheduler und speichern Sie das Ausführungsdatum separat, damit sich Kampagnen-Momentaufnahmen vergleichen lassen.

Artikel: IG-Profile anhand überprüfbarer Felder mit Kampagnenbriefings abgleichen
Zusammenfassung: Prüfen Sie öffentliche IG-Profile vor dem Kampagnenstart: Rufen Sie Daten anhand des Usernames ab, gleichen Sie sie mit dem Briefing ab und erstellen Sie einen Abweichungsbericht, ohne fehlende Daten durch Nullen zu ersetzen.
Bildrolle: unterstützende Illustration 2 – ein anderer konkreter Aspekt
Abschnitt: Ergebnisse auswerten und Prüfungen automatisieren
Visuelles Motiv: Infografik auf Russisch zum Ablauf: CSV-Briefingzeilen → GET /v1/use
Das Diagramm zeigt den Weg von einer Briefingzeile bis zum Bericht – einschließlich der manuellen Prüfung fehlender Daten.© jsonscraper · KI-generierte Illustration

Wenn sich eine Regel ändert, speichern Sie sie im Briefing, statt sie fest im Code zu hinterlegen. So bleiben Schwellenwerte nachvollziehbar: Für jede Zeile ist sichtbar, welcher Followerbereich oder welches Merkmal für ein öffentliches Profil erwartet wurde. Für die Biografie lässt sich eine Prüfung auf einen bestimmten Text ergänzen, doch eine wörtliche Übereinstimmung ersetzt nicht die inhaltliche Beurteilung durch eine Fachkraft.

Die Seite zur IG Scraper API enthält die Basis-URL, ein Anfragebeispiel und einen Link zu Postman. Das obige Szenario verwendet ausschließlich den bestätigten Profilabruf anhand des Usernames und setzt nicht voraus, dass diese Anfrage Beiträge zurückgibt.

Das praktische Ergebnis ist eine reproduzierbare Vorabprüfung: Statt die gesamte Liste manuell durchzugehen, erhält das Team eine Übersicht mit Übereinstimmungen und Ausnahmen, die sich auf konkrete Felder des Briefings beziehen. Das beschleunigt die Prüfung vor dem Kampagnenstart; die Entscheidung, ob ein Profil zur Kampagne passt, bleibt bei der zuständigen Fachkraft.

Menschen

Für diesen Artikel sind noch keine Personen aufgeführt.

Lesen Sie weiterIG-Profile vor Kampagnenstart mit dem Briefing abgleichen: Prüfung per API
Lesen Sie den nächsten Artikel

Vom Artikel zur funktionierenden Integration

Entdecke die Social-Data-APIs von jsonscraper, teste Anfragen und entwickle deinen nächsten Workflow.

APIs entdecken