Instagram Как получить идентификатор пользователя от имени пользователя?


Я нахожусь в процессе встраивания моего изображения в мой сайт с помощью JSON, URL-адрес нуждается в моем идентификаторе пользователя, чтобы я мог получить этот канал.

Итак, где я могу найти/получить свой идентификатор пользователя?

23 93

23 ответа:

обновление в Apr-17-2018, Похоже, что эта конечная точка все еще работает (но ее больше не публичная конечная точка), вы должны отправить запрос с дополнительной информацией на эту конечную точку. (Нажмите F12, чтобы открыть Панель инструментов разработчика, затем перейдите на вкладку Сеть и отследите запрос.)

жаль, потому что я слишком занят. Надеюсь, эта информация поможет вам, ребята. Хм, не стесняйтесь дать мне право голоса, если хотите.


обновление в Apr-12-2018, cameronjonesweb сказал, что эта конечная точка не делает больше работать. Когда он/она пытается получить доступ к этой конечной точке, возвращается код состояния 403.


очень поздний ответ, но я думаю, что это лучший ответ на эту тему. Надеюсь, что это полезно.

вы можете получить информацию о пользователе, когда запрос сделан с url ниже:

https://www.instagram.com/{username}/?__a=1

например:

этот url-адрес будет получать всю информацию о пользователе, имя пользователя которого является therock

https://www.instagram.com/therock/?__a=1

введите этот url-адрес в вашем браузере с именем пользователя, которое вы хотите найти, и ваш токен доступа

https://api.instagram.com/v1/users/search?q=[USERNAME]&access_token=[ACCESS TOKEN]

легко получить идентификатор пользователя и сведения о пользователе

https://api.instagram.com/v1/users/search?q=[ user NAME] &client_id=[ YOU APP Client ID ]

Например:

https://api.instagram.com/v1/users/search?q=zeeshanakhter2009&client_id=enter Ваш id

результат:

{"meta":{"code":200},"data":[{"username":"zeeshanakhter2009","bio":"http://about.me/zeeshanakhter","website":"http://zeeshanakhter.com","profile_picture":"http://images.ak.instagram.com/profiles/profile_202090411_75sq_1377878261.jpg","full_name":"Zeeshan Ахтер", "id":"202090411"}]}

большинство методов являются устаревшими, начиная с июня, 1/2016 изменения API

ниже работал для меня,

  • доступ к instagram в вашем браузере говорят chrome, safari или firefox.
  • запустите инструменты разработчика, перейдите к опции консоли.
  • в командной строке введите команду ниже и нажмите enter:

    window._sharedData.entry_data.ProfilePage[0].user.id
    

Если Вам повезет, вы получите с первой попытки, если нет, наберитесь терпения, обновите страницу и повторите попытку. держать делать, пока не увидите user-id. Удачи вам!!

вместо того, чтобы использовать API, можно изучить страницу пользователя Instagram, чтобы получить идентификатор. Пример кода на 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"];

конечно, этот код должен быть адаптирован, если Instagram меняет формат страницы.

Я написал этот инструмент для получения идентификаторов Instagram по имени пользователя: Instagram user ID Lookup.

Он использует python-instagram библиотека для доступа к API и включает в себя ссылка на исходный код (написано на Django), который иллюстрирует различные реализации API Instagram.

обновление: добавлен исходный код порт в Ruby on Rails.

в настоящее время нет прямого API Instagram, чтобы получить идентификатор пользователя от имени пользователя. Вам нужно позвонить в GET / users / search API, а затем повторите результаты и проверьте, если username значение поля равно вашему имени пользователя или нет, тогда вы хватаете id.

вы должны использовать Instagrams API преобразовать ваш username to id.

если я правильно помню, вы используете users/search найти имя пользователя и получить идентификатор от туда

Я пробовал все вышеупомянутые решения и ни один не работает. Я думаю, Instagram ускорил их изменения. Я попробовал, однако, метод консоли браузера и немного поиграл и нашел эту команду, которая дала мне идентификатор пользователя.

window._sharedData.entry_data.ProfilePage[0].graphql.user.id

вы просто заходите на страницу профиля и вводите эту команду в консоль. Возможно,вам придется обновить страницу, чтобы это работало. (Я должен был опубликовать это в качестве ответа, из-за моей низкой репутации)

чтобы получить свой идентификатор, сделайте аутентифицированный запрос к API Instagram users/self/feed конечной точки. ответ будет содержать, среди прочих данных, имя пользователя, а также идентификатор пользователя.

перейдите в консоль api & Копировать ссылку https://api.instagram.com/v1/users/self в текстовом поле и аутентификации с помощью instagram id & пароль, вы получите Ваш идентификатор в ответ

большинство этих ответов недействительны после 6/1/2016 Instagram API изменения. Лучшим решением сейчас является здесь. Перейти к вашему каналу instagram.com скопируйте адрес ссылки для любой из ваших фотографий и вставьте его в текстовое поле на этой странице. Сработало как по волшебству.

Это можно сделать через apigee.com доступ к API Instagram здесь на сайте разработчика Instagram. После входа в систему нажмите на вызов API "/users/search". Оттуда вы можете найти любое имя пользователя и получить его идентификатор.

{
"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"
}]}


Если у вас уже есть код доступа, это также можно сделать следующим образом: https://api.instagram.com/v1/users/search?q=USERNAME&access_token=ACCESS_TOKEN

Ну вы можете просто позвонить по этой ссылке

http://jelled.com/ajax/instagram?do=username&username=[USER_NAME_GOES_HERE]&format=json

хотя он больше не указан на странице API doc, я нашел thread что упоминает, что вы можете использовать self на месте user-id на users/{user-id} конечная точка, и она вернет информацию о текущем аутентифицированном пользователе.

и users/self это то же самое, что явный вызов users/{some-user-id} и содержит идентификатор пользователя как часть полезной нагрузки. Как только вы аутентифицируетесь, просто позвоните в users/self и результат будет включать в настоящее время проходит проверка идентификатор пользователя, например:

{
    "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
        }
}

Если вы используете неявную аутентификацию, у вас должна быть проблема с невозможностью найти ид_пользователя

Я нашел способ, например:

Access Token = 1506417331.18b98f6.8a00c0d293624ded801d5c723a25d3ec the User id is 1506417331

ты бы раздвоение единого, отделенных друг от друга . obtenies to acces token и первый элемент

Я думаю, что лучший, самый простой и безопасный метод-это откройте свой профиль instagram в браузере посмотреть исходный код и ищите переменную пользователя (ctrl+f "пользователь":{") внутри основного кода javascript. Идентификационный номер внутри переменной пользователя должен быть вашим идентификатором.

это код, как он выглядел в момент написания этого ответа (он может и, вероятно, будет изменен в будущем):

"user":{"username":"...","profile_picture":"...","id":"..........","full_name":"..."}},

вот как вы можете получить идентификатор пользователя от имени пользователя:

$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;

вы можете сделать это с помощью Instagram API (конечные точки пользователя: / пользователи / поиск)

how - to в 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);
https://api.instagram.com/v1/users/search?q="[USERNAME]"&access_token=[ACCESS TOKEN]

Пожалуйста, обратите внимание на кавычки.

это не всегда возвращает действительный результат, но чаще, чем без кавычек:

https://api.instagram.com/v1/users/search?q="self"&count=1&access_token=[ACCESS TOKEN] 

возвращает пользователя " self "(id: 311176867)

https://api.instagram.com/v1/users/search?q=self&count=1&access_token=[ACCESS TOKEN]

возвращает пользователя " super_selfie "(id: 1422944651)

здесь очень простой сайт, который хорошо работает для меня:

http://www.instaid.co.uk/

или вы можете сделать следующее, заменив "имя пользователя" на ваше имя пользователя Instagram

https://www.instagram.com/username/?__a=1

или вы можете войти в свой аккаунт Instagram и использовать инструменты Google dev и посмотреть на куки, которые были сохранены. 'ds_user_id' - это ваш пользователь Идентификатор

enter image description here

сначала создайте приложение на Instagram и получите идентификатор клиента для вашего приложения

http://instagram.com/developer/

теперь просто скопируйте вставить следующий Url в окно браузера, заменив имя пользователя и идентификатор клиента https://api.instagram.com/v1/users/search?q=[Your-username]&client_id=[Your-Client-Id]

вы получите результат Json, содержащий общую информацию о вашей учетной записи вместе с вашим числовым пользователем Идентификатор

рабочее решение ~2018

я обнаружил, что если у вас есть маркер доступа, вы можете выполнить следующий запрос в вашем браузере:

https://api.instagram.com/v1/users/self?access_token=[VALUE]

фактически, маркер доступа содержит идентификатор пользователя (первый сегмент маркера):

<user-id>.1677aaa.aaa042540a2345d29d11110545e2499

Вы можете получить маркер доступа с помощью этот инструмент предоставляется Pixel Union.