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

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

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

Ответ 1

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

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

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

например:

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

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

Обновление: июнь-20-2019, API теперь общедоступен. Аутентификация не требуется.

Обновление в декабре-11-2018, мне нужно было подтвердить, что эта конечная точка еще работает. Вам необходимо авторизоваться перед отправкой запроса на этот сайт, потому что он больше не является публичной конечной точкой. Шаг входа в систему также прост. Это мое демо: https://youtu.be/ec5QhwM6fvc


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

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


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


Ответ 2

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

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

Ответ 3

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

https://api.instagram.com/v1/users/search?q= [ ИМЯ ПОЛЬЗОВАТЕЛЯ] & client_id = [ВАШ APP идентификатор клиента]

Например:

https://api.instagram.com/v1/users/search?q=zeeshanakhter2009&client_id=enter_your_id

Результат:

{ "Мета": { "код": 200}, "данные": [{ "имя пользователя": "zeeshanakhter2009", "био": "http://about.me/zeeshanakhter", "сайт": "HTTP://zeeshanakhter.com","profile_picture":"http://images.ak.instagram.com/profiles/profile_202090411_75sq_1377878261.jpg","full_name":"Zeeshan Akhter "," id ":" 202090411 "}]}}

Ответ 4

Большинство методов устарели с 1 июня 2012 г. api changes

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

  • Доступ к Instagram в вашем браузере говорит хром, сафари или firefox.
  • Запустите инструменты разработчика, перейдите к опции консоли.
  • в командной строке введите ниже команду и нажмите enter:

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

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

Ответ 5

Вместо использования 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 изменит формат своей страницы.

Ответ 6

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

Ответ 7

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

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

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

Ответ 8

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

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

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

Ответ 9

Вам нужно использовать Instagrams API для преобразования username в id.

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

Ответ 10

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

Ответ 11

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

Ответ 12

Рабочий раствор без токена доступа по состоянию на октябрь-14-2018:

Поиск имени пользователя:

https://www.instagram.com/web/search/topsearch/?query=<username>

Пример:

https://www.instagram.com/web/search/topsearch/?query=therock

Это поисковый запрос. Найдите в ответе точно совпадающую запись и получите идентификатор пользователя из записи.

Ответ 13

Хотя он больше не указан на странице документа API, я нашел 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
        }
}

Ответ 14

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

Ответ 15

Вы можете сделать это, используя API-интерфейс Instagram (конечные точки пользователя:/users/search)

how-to in 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);

Ответ 16

Это можно сделать с помощью API-интерфейса API-интерфейса apigee.com здесь на сайте разработчика 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

Ответ 18

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

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

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

вы бы разделили одно разделение на. obtenies на токен acces и первый элемент

Ответ 19

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

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

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

Ответ 20

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

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

Ответ 21

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

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

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

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

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

введите описание изображения здесь

Ответ 22

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)

Ответ 23

Рабочий раствор ~ 2018

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

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

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

<user-id>.1677aaa.aaa042540a2345d29d11110545e2499

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

Ответ 24

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

http://instagram.com/developer/

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

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