2013-12-17 19 views
8

Ich verwende die Instagram-API, um die Anzahl der Personen zu ermitteln, die einem bestimmten Konto folgen.Verwenden der Instagram-API zum Abrufen aller Follower

$follow_info = file_get_contents('https://api.instagram.com/v1/users/477644454/followed-by?access_token=ACESS_TOKEN&count=-1'); 
$follow_info = @json_decode($follow_info, true); 

Dies gibt einen Satz von 50 Ergebnissen zurück. Sie haben einen next_url Schlüssel im Array, aber es wird zeitaufwendig, auf die nächste Seite der Follower zu gehen, wenn es um Zehntausende geht.

Ich habe in StackOverflow gelesen, dass die Einstellung des Parameters count auf -1 den gesamten Satz zurückgibt. Aber es scheint nicht zu sein ...

Antwort

9

Instagram begrenzt die Anzahl der Ergebnisse in ihrer API für alle Arten von Endpunkten zurückgegeben, und sie ändern diese Grenzen willkürlich, ohne Warnung, vermutlich Serverlast zu behandeln.

Mehrere ähnliche Themen sind:

Kurz gesagt, Sie werden nicht in der Lage sein, die maximale Zeilen zurückgegeben zu erhöhen, und Sie stecken Paginierung sein.

+1

Okay. Nun, wenn ich die Paginierungslinks verwenden muss, wie bekomme ich dann alle Follower, indem ich durch jeden Satz von 100 Followern schlage? – Lance

+0

Sehr, sehr langsam ... Sie müssen diese URL jedes Mal aufrufen, wenn Sie in einer Schleife eine Antwort erhalten, bis keine Ergebnisse mehr angezeigt werden. Statigram macht das. Für große Benutzermengen kann dies sehr lange dauern, und Sie müssen in der Kopfzeile nach "x-ratelimit" suchen. – brandonscript

-4
$follow_info = file_get_contents('https://api.instagram.com/v1/users/USER_ID?access_token=ACCES_TOKEN'); 
$follow_info = json_decode($follow_info); 
print_r($follow_info->data); 

return 
{ 
    "meta": { 
    "code": 200 
    }, 
    "data": { 
    "username": "casadojulio", 
    "bio": "A Casa do Júlio é um espaço para quem gosta da ideia de cuidar da saúde com uma alimentação saudável e saborosa.", 
    "website": "", 
    "profile_picture": "", 
    "full_name": "", 
    "counts": { 
     "media": 5, 
     "followed_by": 25, 
     "follows": 12 
    }, 
    "id": "1066376857" 
    } 
} 
+0

Hallo @ user3337874. Vielleicht möchten Sie [diese Anleitung] (http://stackoverflow.com/help/how-to-answer) in der Hilfe nachlesen, wie Sie gute Antworten geben können - wir versuchen hier qualitativ hochwertige Antworten mit guten Erklärungen zu fördern, nicht jedoch nur Stücke von Code. – starsplusplus

0
$follow_info = file_get_contents('https://api.instagram.com/v1/users/USER_ID?access_token=ACCES_TOKEN'); 
$follow_info = json_decode($follow_info); 
print_r($follow_info->data); 

Und:

return 
{ 
    "meta": { 
    "code": 200 
    }, 
    "data": { 
    "username": "i_errorw", 
    "bio": "A Casa do Júlio é um espaço para quem gosta da ideia de cuidar da saúde com uma alimentação saudável e saborosa.", 
    "website": "", 
    "profile_picture": "", 
    "full_name": "", 
    "counts": { 
     "media": 5, 
     "followed_by": 10, 
     "follows": 120000 
    }, 
    "id": "1066376857" 
    } 
} 
+2

Könnten Sie eine Beschreibung eingeben, was der Code tut, um das Problem des Benutzers zu beheben? –

Verwandte Themen