La récupération de plus de 150 Instagram commentaires
Le Problème
Je voudrais être en mesure de voir l'ensemble des commentaires sur n'importe quel morceau de Instagram médias, même si les médias ont plus de 150 commentaires. Dès à présent, il est apparemment impossible de voir plus que les 20 derniers commentaires sur un morceau de médias sur le Instagram site et si on utilise soit le Instagram API Console ou la Instagram Bibliothèques API, la plus récente de 150 commentaires sont retournés sans options pour la pagination ou la visualisation de plus de commentaires.
Ce Que J'Ai Essayé De
J'ai d'abord, bien sûr, essayé le documentée commentaires des médias requête à la fois la condition de la console et dans mon propre environnement. Dans les deux cas, un maximum de 150 commentaires ont été retournés. Perplexe, j'ai commencé à chercher plus d'informations en ligne.
Avoir lu plus de la Instagram Documentation de l'API à fond, testé différents points de terminaison dans le Instagram API Console, et de lire divers StackOverflow questions dans le Instagram tag et Instagram API Google Groupe questions sur plusieurs Instagram sujets, je me demandais si il y avait une chance d'avoir quelque chose de sans-papiers que j'ai pu essayer.
La utilisateur récent media endpoint documentation inclut des paramètres pour max_id
et max_timestamp
qui permettent de feuilleter les plus récentes des médias pour un utilisateur donné en récupérant les médias qui précède dit max_id
ou max_timestamp
. Étant donné que chaque commentaire est livré avec created_time
et id
attributs, j'ai essayé d'ajouter les paramètres de max_id
et max_timestamp
(à la fois sur leur propre et ensemble) pour les différents commentaires des Id et des horodateurs dans une tentative de la page par le biais des commentaires. Aucune de mes tentatives travaillé.
Je suis maintenant à l'arrêt, sauf si quelqu'un a une autre suggestion.
Exemple Précis
À l'aide de la Instagram API Console, j'ai pris les mesures suivantes pour tenter d'obtenir tous les commentaires pour cette photo.
- Authentifié moi-même pour une
OAuth2
jeton - Couru un utilisateur de la requête de recherche pour
coltonlhaynes
pour obtenir l'utilisateurid: 9610843
- Couru un utilisateur récent de media query pour l'identification de l'utilisateur:
9610843
d'obtenir la plus récente des médias - Rassemblé de l'information sur les plus récentes des médias (la photo ci-dessus liés)
- médias
id: 698057751201132903_9610843
- commentaire
count: 1375
- médias
- Couru un média commentaire de requête pour les médias id:
698057751201132903_9610843
pour obtenir la plupart des commentaires récents - Rassemblé de l'information sur le moins récent commentaire
created time: 1397460230
- commentaire
id: 698269477955776593
- Couru un média commentaire de requête pour les médias id:
698057751201132903_9610843
avec la suite de requête supplémentaires, chaînes de paramètres dans la tentative de la page par le biais des commentaires, mais il a reçu les mêmes résultats que l'étape #6?max_timestamp=1397460230
?max_id=698269477955776593
?max_timestamp=1397460230&max_id=698269477955776593
?max_id=698269477955776593&max_timestamp=1397460230
Veuillez Noter
À ma connaissance, il n'y a pas de solution à ce problème, mais depuis l'Instagram de l'Équipe de Développement a déclaré de ne plus être suivi le Groupe Google et sera suivi StackOverflow au lieu de cela, je suis en train de mettre cela ici.
- C'est extrêmement frustrant que leur documentation ne dit même que ce point de terminaison est "une liste complète des commentaires sur un objet multimédia." Joliment écrit le post. J'espère que vous trouverez une réponse.
- son faut dire aussi que comme le point de terminaison semble être limité à 120 plus récente aime.
- Maintenant, la description du point de terminaison dit: "Obtenir la liste des derniers commentaires sur un objet multimédia. ":) Il aurait été agréable d'avoir la pagination au moins pour 500 commentaires. Qui aurait été suffisant pour la plupart des utilisations...
- avez-vous essayé d'utiliser InstaSharp ?
- API Console pas trouvé instagram.com/developer/api-console
- Toutes les mises à jour sur ce point?
Vous devez vous connecter pour publier un commentaire.
Ok, Cela va être un très "Hacky" solution, et je ne suis pas actuellement le programme d'installation pour le faire moi-même (en raison du manque de l'ADSL à la maison) mais je peux fournir un guide étape par étape de la façon dont je l'approche de cette question.
Tout d'abord, vous aurez besoin d'un outil appelé "Charles Web Debuging Proxy"
Il y a un tutoriel sur le site pour savoir comment activer le protocole SSL "débogage", dans charles, (ce qui vous obligera à installer un nouveau "certificat racine" sur votre appareil mobile, de le tromper en pensant que les transactions https signé par charles sont effectivement signé par instagram.com )
Maintenant configurer votre appareil mobile pour acheminer toutes les demandes par le biais de la dite procuration ( qui devra être installé sur votre réseau wi-fi local.)
aller à https://www.google.com et vérifier que charles se connecte à la fois les demandes et les réponses.
Une fois que c'est toute l'installation correctement, alors vous pouvez prendre un coup d'oeil à des appels d'API qui l'instagram app lui-même utilise pour générer le dit commentaire pages.
Le générique de réponse ici est "non, ce n'est pas possible par la poste les points de terminaison".
Instagram mis à jour Limites de fréquence (après Nov 17, 2015). Toutes les limites de fréquence sur l'Instagram de la Plateforme sont contrôlés séparément pour chaque jeton d'accès, et sur un coulissantes à 1 heure de fenêtre. Des applications ont plus de limites de fréquence que les apps en Mode Sandbox.
Qui l'état suivant les limites dans un contexte global:
Plus séparément limitations pour les commentaires d'évaluation:
Si votre application excède ces limites de fréquence cardiaque, vous recevrez une réponse avec un code de réponse HTTP de
429 (Too Many Requests)
.Dès que Instagram Plate-forme de contrôle par
access token
base, vous pouvez obtenir une plus grande limite de l'utilisation de multi-threading avec plusieurs jetons d'accès. Mais il a mises en garde: 1. tout ne pouvait être mis en parallèle de plusieurs jetons d'accès, que le contexte sera différent. 2. Il pourrait en contradiction avec Plate-Forme Politique et TOSCe n'est pas "hacky" à tous.
Comme Instagram donne le lien où vous êtes en mesure de vous recevoir tous les commentaires ici:
https://instagram.com/developer/endpoints/comments/
Tout ce que vous avez à faire est de boucler sur le lien Instagram est de vous donner. Je l'ai fait comme cela. Im en utilisant l'Api de faire de cette façon.
Le $id est le media_id de l'image. Si vous foreach plus de cette fonction avec l'image id que vous allez recevoir tous les commentaires.
Il n'était pas bien difficile quand j'ai découvert cette façon.
Vous pouvez aussi faire comme cela alors que foreaching sur elle. :
Fois, il vous renvoie un tableau des commentaires de la photo(s).