Review Mining

Wie laden Sie Bewertungen aus dem iOS App Store herunter?

By Axel

Wenn Sie Bewertungen aus dem App Store herunterladen möchten, gibt es zwei Möglichkeiten: Entweder Sie haben Zugriff auf die App, oder Sie haben ihn nicht. 

In diesem Artikel zeigen wir Lösungen und Strategien für beide Fälle, mit denen Sie an Bewertungen im App Store kommen. Dabei wägen wir jeweils Preis, Zeitaufwand und Skalierbarkeit ab.

Doch bevor wir uns in Lösungen zum Export von Bewertungsdaten aus dem App Store vertiefen, sollten Sie ein paar Dinge wissen.

Wie iOS-Bewertungen tatsächlich funktionieren

Wer sich mit Bewertungen im App Store beschäftigt, weiß oft nicht, dass zwei unterschiedliche Objekte im Spiel sind:

  • Bewertungen
  • Noten

Auf einer Plattform wie Google My Business gibt es nur ein Objekt: die Bewertung. Sie hat entweder einen Inhalt oder nicht.

Bei iOS läuft das anders. 

Eine Bewertung ohne Inhalt wird zur Note. Ein Bewertungsobjekt dagegen hat einen Inhalt und eine zugehörige Note.

Das Problem: Noten sind größtenteils nicht zugänglich. Wer behauptet, Ihnen Zugriff auf Noten zu verschaffen, redet entweder kompletten Unsinn oder rekonstruiert die Daten aus öffentlich verfügbaren, aggregierten Informationen.

Mit den Informationen, die auf den öffentlichen App-Seiten bereitgestellt werden, lässt sich das bis zu einem gewissen Grad zurückrechnen. Etwa so 👇

Einige APIs verkaufen diese Daten sogar.

In der Praxis ist das extrem unzuverlässig. Ich empfehle, sich nur auf Bewertungen zu konzentrieren. Bewertungen bilden eine repräsentative Teilmenge der Noten ab, sind aber viel einfacher zu nutzen und genauer zu messen.

Ein Wort zu Ländern und Sprachen

Vielleicht wissen Sie auch schon, dass eine App im App Store nur in einer bestimmten Auswahl von Ländern gelistet ist. 

Manche Apps sind in jedem Land verfügbar, andere nur in Korea, den USA, Frankreich oder einer beliebigen Kombination der 116 Länder, die der Store abdeckt.

Bei den Ländereinstellungen im App Store lauern ein paar Fallstricke. Der wichtigste: Bewertungen sind einem Land zugeordnet, nicht einer Sprache.

Einen "globalen" Endpunkt habe ich nicht gefunden, ich vermute, es gibt schlicht keinen. 

Das heißt: Um wirklich alle Bewertungen zu bekommen, müssen Sie jedes einzelne Land abfragen. Sie können sich auch auf wenige Länder beschränken, riskieren dann aber, Bewertungen zu übersehen. 

Der App Store umfasst 116 Länder. 

Hier eine Liste.

Sie können sie hier als CSV herunterladen.

Eine App-ID finden

Für fast jede der folgenden Lösungen brauchen Sie die App-ID, um an die richtigen Bewertungen zu kommen, auch für Apples eigene App Store Connect API. 

#1 Ihre App-ID im App Store Connect Dashboard finden

Wenn Sie Zugriff auf das App Store Connect Dashboard haben, ist das kein Problem.

Das ist ganz einfach: Melden Sie sich in der Konsole an, wählen Sie die richtige App aus und suchen Sie die Apple-ID.

#2 Ihre App-ID auf dem öffentlichen App Store finden

Die ID steckt auch in den öffentlichen URLs, die der App Store für seine Seiten generiert. Gehen Sie zum App Store, suchen Sie Ihre App und lesen Sie die ID aus der URL ab.

Bei Instagram sieht die URL zum Beispiel so aus: https://apps.apple.com/us/app/instagram/id389801252, die ID ist der Teil nach "id", also 389801252.

Die Suchfunktion von Apple ist mir persönlich zu umständlich, deshalb suche ich meist bei Google mit einem einfachen Site-Filter.

Die Suche für Instagram würde so aussehen: site:apps.apple.com instagram.

#3 Eine beliebige App-ID programmgesteuert finden

Wenn Sie erwarten, viele App-IDs zu brauchen, können Sie auch Apples iTunes-Suche programmatisch nutzen. Das Ganze ist öffentlich zugänglich und von Apple hier dokumentiert.

Für die Suche führen Sie Folgendes aus:

GET `https://itunes.apple.com/search?&media=software&entity=${entity}&term=${query}&country=${country.country_code}&limit=3

Bei der Suche nach mobilen Apps lautet der Parameter entity "software".

Die Abfrage ist einfach Ihr Suchbegriff, URL-kodiert.

Der Ländercode folgt ISO 3166-1 (zweistellig). Achtung: Das ist nicht der Standard, den die App Store Connect API verwendet, dort kommen dreistellige Codes zum Einsatz.

Kurioserweise heißen die App-IDs an diesem Endpunkt "trackIDs" (ein Überbleibsel aus iTunes-Zeiten).

#1 Apples App Store Connect API verwenden

Das funktioniert nur, wenn Sie Zugriff auf die App Store Connect API haben und die App, deren Bewertungen Sie herunterladen möchten, zu Ihrem Zugriff gehört.

Wenn nicht, können Sie diese erste Methode überspringen.

Apples eigene API bringt im Wesentlichen drei Vorteile:

  • Sie können Antworten des Unternehmens über dieselbe API-Verbindung zurücksenden.
  • Sie können sich auf ein konsistentes, zuverlässiges Datenschema verlassen, etwa wenn Sie Bewertungen regelmäßig per Abfrage überwachen möchten.
  • Mit einem einzigen API-Aufruf erreichen Sie Bewertungen aus allen Regionen. Bei den anderen Lösungen geht das nicht, dazu kommen wir gleich.

Der Haken: Es wird etwas technischer. 

Um sich bei Apples App Store Connect API zu authentifizieren, müssen Sie JSON Web Tokens (JWTs) signieren. Das ist hier ausführlich dokumentiert, mit JWT-Erfahrung sollte es kein Problem sein. 

Wenn Sie als Marketer ohne technischen Hintergrund einfach nur eine Liste Ihrer Bewertungen herunterladen möchten, ist eine Drittanbieterlösung oft der einfachere Weg.

#2 Apples undokumentierte API verwenden

Undokumentiert ist inzwischen übertrieben, diese URL findet sich überall im Netz. Wenn Sie an Low-Level-Daten interessiert sind und keine Angst vor ein paar Proxys haben, können Sie das problemlos selbst ausprobieren.

Der größte Nachteil: Sie müssen alle 116 Länder des Stores auf Bewertungen prüfen, das kann eine Weile dauern. Zur Referenz hier die Länderliste mit ihren Codes.

Um App-Store-Bewertungen zu scrapen, können Sie diesen Endpunkt nutzen: `https://itunes.apple.com/{countryCode}/rss/customerreviews/page={page}/sortBy={sort}/id={app_id}/json`

Er liefert jedes Mal bis zu 50 Bewertungen im JSON-Format zurück. Eigentlich ziemlich simpel.

Vier Parameter passen Ihre Abfrage an.

  • countryCode: die vollständige Liste finden Sie oben in der Länderliste.
  • page: Wenn Sie alle verfügbaren Bewertungen abrufen möchten, brauchen Sie eine Paginierungslogik. Jede Seite liefert 50 Bewertungen.
  • sortBy: die gewünschte Sortierreihenfolge. Vermutlich gibt es mehrere mögliche Werte, aber mostRecent funktioniert, warum also etwas anderes nehmen?
  • app_id: Die App-ID finden Sie auf der App-Seite in Ihrem Browser. Die App-ID von Shopify ist zum Beispiel 324684580.

Das ist alles.

Sie bekommen eine recht umfangreiche JSON-Ausgabe mit 50 Bewertungen, Paginierungsinfos im "link"-Objekt und ein paar weiteren Datenpunkten.

Übrig bleibt nur noch, die Ausgabe in Ihren JSON-Parser der Wahl zu laden und einen Wrapper zu schreiben.

Fallstricke, auf die Sie achten sollten

Rufen Sie den Endpunkt ohne jede Drosselung auf, wird er mit den Antworten immer langsamer, bis irgendwann Timeouts oder 403-Fehler kommen.

Dann bleibt Ihnen nur, herauszufinden, wo es schiefgelaufen ist, um an der richtigen Stelle neu zu starten. Macht keinen Spaß.

Mit ein wenig Drosselung bleiben die Antworten schnell, unter dem Strich sind Sie damit sogar schneller fertig. Ein klassischer Fall, bei dem es hilft, sich in die Lage der Gegenseite zu versetzen, die Sie scrapen.

Nutzen Sie eine IP zu häufig, das gilt auch für saubere Residential IPs bei lokalen Läufen, kassieren Sie für einige Minuten oder Stunden 403-Fehler. Für große Mengen an Bewertungen brauchen Sie eine Proxy-Rotation oder einen entsprechenden Service. Server-Proxys funktionieren einwandfrei, letztlich schützt sich Apple hier einfach vor aggressivem Scraping.

Am einfachsten umgehen Sie das mit Scraping-APIs wie Scrapingbee, das kann allerdings ziemlich teuer werden.

Bibliotheken und Pakete

Ein paar Bibliotheken sparen Ihnen hier Zeit.

Diese Python-Bibliothek nutzt genau diesen Endpunkt und übernimmt die Paginierung für Sie. Diese Node-Bibliothek ist eine Portierung der Python-Bibliothek nach Node und bringt noch ein paar Extras mit, etwa ein Ratings-Histogramm (das ist, nun, bestenfalls unzuverlässig).

#3 Reviewflowz-Bewertungsexporte verwenden

Wenn Sie kein Skript schreiben können oder wollen, das alle 116 Länder durchläuft, Proxys rotiert, Apples JSON in ein handlicheres Format packt, Bewertungen automatisch dedupliziert (dieselbe Bewertung kann in mehreren Ländern auftauchen), die Sprache erkennt und so weiter, dann haben wir die Lösung für Sie.

Mit unseren Pay-as-you-go-Exporten laden Sie Bewertungen aus jeder App, in jedem Land, in wenigen Sekunden herunter.

Suchen Sie nach einer App, wählen Sie die gewünschte aus und exportieren Sie.

Laden Sie sich zunächst ein Beispiel mit 25 Zeilen herunter, um zu prüfen, wie die Datei aussieht und ob alles Nötige drin ist. Danach können Sie den vollständigen Export für 0,10 USD pro Zeile kaufen.

Bei hohem Volumen oder besonderen Anforderungen melden Sie sich einfach bei uns. Meistens können wir direkt helfen, oder wir empfehlen jemanden, der weiterhelfen kann.

Ready to get more reviews?

Set up in under five minutes. No demo required.