Instagram – Tagsuche, Tagbewertungen und Tagbegutachtungen

Vor einigen Tagen entdeckte ich – wieder einmal – einige (abgeschriebene) Artikel bei den üblichen Szenepublikationen rund um die Fragen:
– Welche Hashtags soll ich bei Instagram verwenden?
– Welche Hashtags sind besonders gut?
Die Antworten hierauf sind leider alles andere als „befriedigend“, da man hier meistens auf Basis dieser diffusen und nicht berechenbaren „Erfahrung“ und „Gefühlen“ argumentiert und Lücken mit Buzzwords gefüllt werden.

Wie dem auch sei: studiert man aufmerksam die API-Dokumentationen aus Instagram, fällt der folgende Endpoint auf:

/tags/tag-name/media/recent

Dieser lässt sich mit diesem Schema bedienen:

https://api.instagram.com/v1/tags/’+interessantertag+’/media/recent?access_token=’+deintoken

Hier gilt leider auch die Fixierung auf maximal 20 Ergebnisse je Endpoint-Abfrage, welche sich so umgehen lässt:

repeat
=> Abfrage
=> Ergebnisübertrag in Datenbank
until pos(’next_url‘,abfrage_ergebnis)<>0;

Hier empfehle ich, die bereits beschriebene Reichweitenanalyse davor zu schalten. Diese erlaubt eine Vorabgewichtung und Abschätzung dahingehend, wie viele Ressourcen für den Scrapeprozess verwendet werden müssen.

Der genannte Endpoint liefert die folgenden Variablen in interpretationsfähigem Zustand zu den gefundenen Medien zurück:

(a) type
=> image / video etc.
(b) filter
=> verwendeter Filter
(c) tags
=> verwendete Tags INKLUSIVE dem abgefragten Tag
(d) comments=>count
=> Anzahl der Kommentare
(e) likes=>count
=> Anzahl der Likes
(f) created_time
=> Zeitstempel, Wann wurde der Post abgesetzt? (Datum und Uhrzeit)
(g) from=>username // from=>id
=> Daten des Accounts, Username und ID
(h) id
=> ID des Posts

Überführt man nun diese Datensätze in eine geeignete Datenbank (mein Favorit: CSV), lassen sich nun sauber Antworten auf diese Fragen finden:

(a) Wer hat den Hashtag „erfunden“?
Liegen die Rohdaten in geeigneter Form vor, findet man den Ursprung des Hashtags (Account, Zeitpunkt etc.) im letzten Datensatz oder in der ersten Publikation (Datum!). Möchte man nun hier eine Influencerbegutachtung anstellen, kann man hier prüfen, wie häufig der Ursprungsaccount unter dem Tag postet und wie denn dessen Reputation in Form von Likes und Comments wächst, nicht wächst oder stabil bleibt.

(b) Postzeitpunkte und Wechselwirkung auf Interaktionen
Durch die Erfassung der Variable „created_time“ lassen sich Antworten auf die Frage „Wann macht ein Posten unter dem Hashtag Sinn?“ beantworten, da hier parallel die Zahlen zu „Likes“ und „Comments“ erfassbar sind.

(c) Weg des Tags
Durch die vorhandenen Rohdaten lassen sich nun auch weitere Beobachtungen und Analysen anstellen. Diese können auf die Beantwortung der folgenden Fragen abzielen:
– Welche anderen Accounts verwenden den Tags nach dessen Ursprung?
– Lassen sich Veränderungen in den Themenwelten des Hashtags feststellen (sichtbar durch: Hashtag-Gruppen, verwendete Filter, Comments)?
– Wann sind Aktivitäten sichtbar (created_time, Uhrzeit und Tag, Wochentag über entsprechende Funktionen auslesbar)?

Zusammenfassung
Unser Instagram-Client besitzt eine ähnliche Funktion, die ich noch etwas anpassen muss (ggf. ab Versionsnummer 0.6BETA freigeschaltet). Die Umsetzung ist eigentlich relativ problemlos realisierbar und ich empfehle auch hier einen Blick in die SDK „Delphi“ oder „Lazarus„. Letzere basiert stark auf Borland Delphi, also PASCAL und diese Sprache dürfte den meisten Kolleg_innen aus den extrem IT-lastigen Umfeld „Internetmarketing“, „Socialmediamarketing“ oder „SEO“ durchaus bekannt sein. Eine Umsetzung auf Basis von PHP & Co. halte ich persönlich für nicht sinnvoll, da viele analysierbare Tags durchaus gigantische Datenmassen und Scrapezeiträume produzieren können (siehe: Reichweitenzahlen, Reichweitenanalysen) und hier das Problem der begrenzten Scriptlaufzeiten vorliegen dürfte. Das Scrapen und Durchanalysieren meines Accounts „hanneswobus“ benötigt bei 8.358 Medien zwischen 5 und 10 Minuten.