Je veux obtenir toutes les images avec une balise de hachage spécifique d'Instagram en utilisant PHP. Comment puis je faire ça?
Premièrement, les "balises" du point de terminaison de l'API Instagram exigeaient une authentification OAuth.
Vous pouvez interroger les résultats d'un hashtag particulier (neigeux dans ce cas) en utilisant l'url suivante
Il est limité à 5000 (limite X-Ratelimit: 5000) par heure
https://api.instagram.com/v1/tags/snowy/media/recent
Exemple de réponse
{
"pagination": {
"next_max_tag_id": "1370433362010",
"deprecation_warning": "next_max_id and min_id are deprecated for this endpoint; use min_tag_id and max_tag_id instead",
"next_max_id": "1370433362010",
"next_min_id": "1370443976800",
"min_tag_id": "1370443976800",
"next_url": "https://api.instagram.com/v1/tags/snowy/media/recent?access_token=40480112.1fb234f.4866541998fd4656a2e2e2beaa5c4bb1&max_tag_id=1370433362010"
},
"meta": {
"code": 200
},
"data": [
{
"attribution": null,
"tags": [
"snowy"
],
"type": "image",
"location": null,
"comments": {
"count": 0,
"data": []
},
"filter": null,
"created_time": "1370418343",
"link": "http://instagram.com/p/aK1yrGRi3l/",
"likes": {
"count": 1,
"data": [
{
"username": "iri92lol",
"profile_picture": "http://images.ak.instagram.com/profiles/profile_404174490_75sq_1370417509.jpg",
"id": "404174490",
"full_name": "Iri"
}
]
},
"images": {
"low_resolution": {
"url": "http://distilleryimage1.s3.amazonaws.com/ecf272a2cdb311e2990322000a9f192c_6.jpg",
"width": 306,
"height": 306
},
"thumbnail": {
"url": "http://distilleryimage1.s3.amazonaws.com/ecf272a2cdb311e2990322000a9f192c_5.jpg",
"width": 150,
"height": 150
},
"standard_resolution": {
"url": "http://distilleryimage1.s3.amazonaws.com/ecf272a2cdb311e2990322000a9f192c_7.jpg",
"width": 612,
"height": 612
}
},
"users_in_photo": [],
"caption": {
"created_time": "1370418353",
"text": "#snowy",
"from": {
"username": "iri92lol",
"profile_picture": "http://images.ak.instagram.com/profiles/profile_404174490_75sq_1370417509.jpg",
"id": "404174490",
"full_name": "Iri"
},
"id": "471425773832908504"
},
"user_has_liked": false,
"id": "471425689728724453_404174490",
"user": {
"username": "iri92lol",
"website": "",
"profile_picture": "http://images.ak.instagram.com/profiles/profile_404174490_75sq_1370417509.jpg",
"full_name": "Iri",
"bio": "",
"id": "404174490"
}
}
}
Vous pouvez jouer ici:
Vous devez utiliser "Authentification" en tant que OAuth 2 et vous serez invité à vous connecter via Instagram. Signalez que vous devrez peut-être renommer le "tag-nom" dans la section "Modèle".
Toutes les données liées à la pagination sont disponibles dans le paramètre "pagination" dans la réponse et utilisez "next_url" pour rechercher le prochain ensemble de résultats.
Il n'est pas encore possible de rechercher du contenu à l'aide de plusieurs balises, pour l'instant seules les balises uniques sont prises en charge.
Premièrement, les "balises" du point de terminaison de l'API Instagram exigeaient une authentification OAuth.
Ce n'est pas tout à fait vrai, vous n'avez besoin que d'une clé API. Juste inscrivez-vous une application et ajoutez-la à vos demandes. Exemple:
https://api.instagram.com/v1/users/userIdYouWantToGetMediaFrom/media/recent?client_id=yourAPIKey
Notez également que le nom d'utilisateur n'est pas l'ID utilisateur. Vous pouvez rechercher les ID utilisateur ici.
Une solution de contournement pour rechercher plusieurs mots clés serait de lancer une demande pour chaque balise et de comparer les résultats sur votre serveur. Bien sûr, cela pourrait ralentir votre site en fonction du nombre de mots clés que vous souhaitez comparer.
Jetez un œil ici pour commencer: http://instagram.com/developer/
puis pour récupérer des photos par tag, regardez ici: http://instagram.com/developer/endpoints/tags/
Obtenir des balises d'Instagram ne nécessite pas OAuth, vous pouvez donc passer les appels via ces URL:
GET IMAGES
https://api.instagram.com/v1/tags/{tag-name}/media/recent?access_token={TOKEN}
SEARCH
https://api.instagram.com/v1/tags/search?q={tag-query}&access_token={TOKEN}
TAG INFO
https://api.instagram.com/v1/tags/{tag-name}?access_token={TOKEN}