Je suis en train d'incorporer mon flux d'images dans mon site Web à l'aide de JSON. L'URL a besoin de mon identifiant d'utilisateur pour que je puisse récupérer ce flux.
Alors, où puis-je trouver/obtenir mon identifiant d'utilisateur?
Réponse très tardive mais je pense que c'est la meilleure réponse de ce sujet. J'espère que c'est utile.
Vous pouvez obtenir des informations sur l'utilisateur lorsqu'une demande est faite avec l'URL ci-dessous:
https://www.instagram.com/{username}/?__a=1
Par exemple:
Cette URL obtiendra toutes les informations sur un utilisateur dont le nom d'utilisateur est therock.
https://www.instagram.com/therock/?__a=1
Mise à jour le 11 décembre 1818, je devais confirmer que ce point final fonctionnait toujours. Vous devez vous connecter avant d'envoyer une demande à ce site, car ce n'est plus un terminal public. L'étape de connexion est également facile. Voici ma démo: https://youtu.be/ec5QhwM6fvc
Mise à jour le 17 avril 2017, il semble que ce noeud final fonctionne toujours (mais ce n'est plus un noeud final public), vous devez envoyer une demande avec des informations supplémentaires à ce noeud final. (Appuyez sur F12 pour ouvrir la barre d’outils de développement, puis cliquez sur l’onglet Réseau et suivez la demande.)
Désolé parce que je suis trop occupé. J'espère que cette information vous aidera les gars. Hmm, n'hésitez pas à me donner un vote négatif si vous le souhaitez.
Mise à jour le 12 avril 2017, cameronjonesweb a déclaré que ce terminal ne fonctionnait plus. Lorsqu'il tente d'accéder à ce noeud final, le code d'état 403 est renvoyé.
Entrez cette URL dans votre navigateur avec le nom d'utilisateur que vous voulez trouver et votre jeton d'accès
https://api.instagram.com/v1/users/search?q=[USERNAME]&access_token=[ACCESS TOKEN]
Obtenir facilement l'ID utilisateur et les détails de l'utilisateur
https://api.instagram.com/v1/users/search?q= [ NOM UTILISATEUR] & client_id = [ID client YOU APP]
Par exemple:
https://api.instagram.com/v1/users/search?q=zeeshanakhter2009&client_id=enter_your_id
Résultat:
{"meta": {"code": 200}, "données": [{"nom d'utilisateur": "zeeshanakhter2009", "bio": "http://about.me/zeeshanakhter", "site Web": "http: //zeeshanakhter.com","profile_picture":"http://images.ak.instagram.com/profiles/profile_202090411_75sq_1377878261.jpg","full_name":"Zeeshan Akhter "," id ":" 2020 " }]}
La plupart des méthodes sont obsolètes depuis le 1er juin 2016 changements d'api
Ci-dessous a fonctionné pour moi,
sur commande Invite entrez commande ci-dessous et appuyez sur Entrée:
window._sharedData.entry_data.ProfilePage[0].user.id
Si vous êtes chanceux, vous aurez à la première tentative, sinon, soyez patient, actualisez la page et essayez à nouveau. continuez jusqu'à ce que vous voyiez l'identifiant de l'utilisateur. Bonne chance!!
Au lieu d'utiliser l'API, on peut examiner la page utilisateur Instagram pour obtenir l'identifiant. Exemple de code en PHP:
$html = file_get_contents("http://instagram.com/<username>");
$doc = new DOMDocument();
$doc->loadHTML($html);
$xpath = new DOMXPath($doc);
$js = $xpath->query('//body/script[@type="text/javascript"]')->item(1)->nodeValue;
$start = strpos($js, '{');
$end = strrpos($js, ';');
$json = substr($js, $start, $end - $start);
$data = json_decode($json, true);
$data = $data["entry_data"]["UserProfile"][0];
# The "userMedia" entry of $data now has the same structure as the "data" field
# in Instagram API responses to user endpoints queries
echo $data["user"]["id"];
Bien entendu, ce code doit être adapté si Instagram change de format de page.
Actuellement, il n'y a pas d'API Instagram directe pour obtenir l'ID utilisateur à partir du nom d'utilisateur. Vous devez appeler l'API GET/users/search , puis itérer les résultats et vérifier si la valeur du champ username
est égale à votre nom d'utilisateur ou non, puis vous récupérez la id
.
J'ai écrit cet outil pour récupérer les identifiants Instagram par nom d'utilisateur: Instagram User ID Lookup .
Il utilise la bibliothèque python-instagram pour accéder à l'API et inclut un lien vers le code source (écrit sur Django), qui illustre diverses implémentations de l'API Instagram.
Update: Ajout du code source pour port à Ruby on Rails .
J'ai essayé toutes les solutions susmentionnées et aucune ne fonctionne. Je suppose que Instagram a accéléré leurs changements. Cependant, j'ai essayé la méthode de la console de navigateur et joué un peu et trouvé cette commande qui m'a donné l'ID utilisateur.
window._sharedData.entry_data.ProfilePage[0].graphql.user.id
Vous venez de visiter une page de profil et entrez cette commande dans la console. Vous devrez peut-être actualiser la page pour que cela fonctionne bien. (J'ai dû poster ceci comme réponse, à cause de ma mauvaise réputation)
Vous devez utiliser Instagrams API
pour convertir votre username
en id
.
Si je me souviens bien, vous utilisez users/search
pour trouver le nom d'utilisateur et obtenir l'id
pour obtenir votre identifiant, faites une demande authentifiée à l'API Instagram users/self/feed
endpoint. la réponse contiendra, entre autres données, le nom d'utilisateur ainsi que l'identifiant de l'utilisateur.
La plupart de ces réponses ne sont plus valides après le 6/06/2016 Modifications de l'API Instagram . La meilleure solution est maintenant ici . Accédez à votre flux sur instagram.com, copiez l'adresse du lien de l'une de vos images et collez-la dans la zone de texte de cette page. Travaillé comme un charme.
Si vous utilisez une authentification implicite, vous devez avoir le problème de ne pas pouvoir trouver le user_id
I found a way for example:
Access Token = 1506417331.18b98f6.8a00c0d293624ded801d5c723a25d3ec the User id is 1506417331
would you do a split single seperated by . obtenies au jeton d'accès et au premier élément
Vous pouvez le faire en utilisant Instagram API (User Endpoints:/users/search)
comment en php:
function Request($url) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
function GetUserID($username, $access_token) {
$url = "https://api.instagram.com/v1/users/search?q=" . $username . "&access_token=" . $access_token;
if($result = json_decode(Request($url), true)) {
return $result['data'][0]['id'];
}
}
// example:
echo GetUserID('rathienth', $access_token);
Voici un site très facile qui fonctionne bien pour moi:
Ou vous pouvez faire ce qui suit en remplaçant "nom d'utilisateur" par votre nom d'utilisateur Instagram
https://www.instagram.com/username/?__a=1
Ou vous pouvez vous connecter à votre compte Instagram et utiliser les outils de développement de Google et consulter les cookies qui ont été stockés. 'ds_user_id' est votre identifiant
Cela peut être fait par l’intermédiaire de l’API Instagram Instagram ici sur le site des développeurs d’Instagram. Une fois connecté, cliquez sur l'appel d'API "/ users/search". De là, vous pouvez rechercher n'importe quel nom d'utilisateur et récupérer son identifiant.
{
"data": [{
"username": "jack",
"first_name": "Jack",
"profile_picture": "http://distillery.s3.amazonaws.com/profiles/profile_66_75sq.jpg",
"id": "66",
"last_name": "Dorsey"
},
{
"username": "sammyjack",
"first_name": "Sammy",
"profile_picture": "http://distillery.s3.amazonaws.com/profiles/profile_29648_75sq_1294520029.jpg",
"id": "29648",
"last_name": "Jack"
},
{
"username": "jacktiddy",
"first_name": "Jack",
"profile_picture": "http://distillery.s3.amazonaws.com/profiles/profile_13096_75sq_1286441317.jpg",
"id": "13096",
"last_name": "Tiddy"
}]}
Si vous avez déjà un code d'accès, vous pouvez également le faire comme suit: https://api.instagram.com/v1/users/search?q=USERNAME&access_token=ACCESS_TOKEN
Eh bien, vous pouvez simplement appeler ce lien
http://jelled.com/ajax/instagram?do=username&username=[USER_NAME_GOES_HERE]&format=json
Solution de travail sans jeton d'accès au 14 octobre 2014:
Rechercher le nom d'utilisateur:
https://www.instagram.com/web/search/topsearch/?query=<username>
Exemple:
https://www.instagram.com/web/search/topsearch/?query=therock
Ceci est une requête de recherche. Recherchez l'entrée correspondant exactement dans la réponse et obtenez l'ID utilisateur à partir de l'entrée.
Bien que cela ne soit plus répertorié sur la page de documentation de l'API, j'ai trouvé un thread qui indique que vous pouvez utiliser self
à la place de user-id
pour le users/{user-id}
endpoint et il renverra les informations de l'utilisateur actuellement authentifié.
Donc, users/self
est identique à un appel explicite à users/{some-user-id}
et contient l'identifiant de l'utilisateur dans la charge utile. Une fois que vous êtes authentifié, appelez simplement users/self
et le résultat inclura l'identifiant de l'utilisateur actuellement authentifié, comme suit:
{
"data": {
"id": "1574083",
"username": "snoopdogg",
"full_name": "Snoop Dogg",
"profile_picture": "http://distillery.s3.amazonaws.com/profiles/profile_1574083_75sq_1295469061.jpg",
"bio": "This is my bio",
"website": "http://snoopdogg.com",
"counts": {
"media": 1320,
"follows": 420,
"followed_by": 3410
}
}
Voici comment vous pouvez récupérer votre identifiant d'utilisateur à partir d'un nom d'utilisateur:
$url = "https://api.instagram.com/v1/users/search?q=[username]&access_token=[your_token]";
$obj = json_decode(@file_get_contents($url));
echo $obj->data[0]->id;
Accédez à la console de l'API & Copiez le lien https://api.instagram.com/v1/users/self
dans le champ de texte et authentifiez-vous à l'aide de votre identifiant instagram et de votre mot de passe. Vous obtiendrez votre identifiant en réponse.
Je pense que la meilleure méthode, la plus simple et la plus sûre, consiste à ouvrir votre profil instagram dans un navigateur, afficher le code source et rechercher la variable utilisateur (ctrl + f "utilisateur": { ") dans le code JavaScript principal. Le numéro d'identification dans la variable utilisateur doit être votre identifiant.
Voici le code à quoi il ressemblait au moment d'écrire cette réponse (il peut et sera probablement modifié à l'avenir):
"user":{"username":"...","profile_picture":"...","id":"..........","full_name":"..."}},
https://api.instagram.com/v1/users/search?q="[USERNAME]"&access_token=[ACCESS TOKEN]
S'il vous plaît noter les guillemets.
Cela ne renvoie pas toujours un résultat valide, mais plus souvent qu'un résultat non cité:
https://api.instagram.com/v1/users/search?q="self"&count=1&access_token=[ACCESS TOKEN]
renvoie l'utilisateur "self" (id: 311176867)
https://api.instagram.com/v1/users/search?q=self&count=1&access_token=[ACCESS TOKEN]
retourne l'utilisateur "super_selfie" (id: 1422944651)
Solution de travail ~ 2018
J'ai constaté que, sous réserve que vous disposiez d'un jeton d'accès, vous pouvez effectuer la requête suivante dans votre navigateur:
https://api.instagram.com/v1/users/self?access_token=[VALUE]
En fait, le jeton d'accès contient le ID utilisateur (le premier segment du jeton):
<user-id>.1677aaa.aaa042540a2345d29d11110545e2499
Vous pouvez obtenir un jeton d'accès en utilisant cet outil fourni par Pixel Union .