138

我正在使用 JSON 将我的图像提要嵌入到我的网站中,URL 需要我的用户 ID,以便我可以检索此提要。

那么,我在哪里可以找到/获取我的用户 ID?

4

26 回答 26

268

答案很晚,但我认为这是该主题的最佳答案。希望这是有用的。

使用以下 url 发出请求时,您可以获取用户信息:

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

例如:

此 url 将获取有关用户名为 therock 的用户的所有信息

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

2019 年 6 月 20 日更新,API 现已公开。无需身份验证。

2018 年 12 月 11 日更新,我需要确认此端点仍然有效。您需要在向该站点发送请求之前登录,因为它不再是公共端点。登录步骤也很简单。这是我的演示: https ://youtu.be/ec5QhwM6fvc


2018 年 4 月 17 日更新,看起来此端点仍在工作(但它不再是公共端点),您必须向该端点发送带有额外信息的请求。(按 F12 打开开发人员工具栏,然后单击网络选项卡并跟踪请求。)

对不起,因为我太忙了。希望这些信息对大家有所帮助。嗯,如果你愿意,请随时给我投反对票。


2018 年 4 月 12 日更新,cameronjonesweb 表示此端点不再工作。当他/她尝试访问此端点时,返回 403 状态码。


于 2016-07-13T03:20:33.793 回答
39

在您的浏览器中输入此 url,其中包含您要查找的用户名和访问令牌

https://api.instagram.com/v1/users/search?q=[USERNAME]&access_token=[ACCESS TOKEN]
于 2012-11-27T14:49:40.630 回答
20

轻松获取 USER ID 和用户详细信息

https://api.instagram.com/v1/users/search?q=[ 用户名]&client_id=[你的APP客户端ID]

例如:

https://api.instagram.com/v1/users/search?q=zeeshanakhter2009&client_id=enter_your_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 Akhter","id":"202090411"}]}

于 2014-01-17T09:13:29.943 回答
18

自 2016 年 1 月 1 日 api 更改以来,大多数方法已过时

下面为我​​工作,

  • 在浏览器上访问 Instagram,比如 chrome、safari 或 firefox。
  • 启动开发者工具,进入控制台选项。
  • 在命令提示符下输入以下命令并回车:

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

如果运气好的话,第一次尝试就会成功,如果没有,请耐心等待,刷新页面再试一次。继续做,直到你看到用户 ID。祝你好运!!

于 2016-07-05T18:07:07.070 回答
14

可以检查 Instagram 用户页面来获取 ID,而不是使用 API。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 更改其页面格式,则必须调整此代码。

于 2014-01-22T00:03:37.037 回答
11

截至 2018 年 10 月 14 日,没有访问令牌的工作解决方案:

搜索用户名:

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

例子:

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

这是一个搜索查询。在回复中找到完全匹配的条目,并从该条目中获取用户 ID。

于 2018-10-15T00:27:48.110 回答
7

目前没有直接的 Instagram API 可以从用户名中获取用户 ID。您需要调用GET /users/search API,然后迭代结果并检查username字段值是否等于您的用户名,然后获取id.

于 2014-09-19T15:03:35.667 回答
6

我编写了这个工具来通过用户名检索 Instagram ID:Instagram User ID Lookup

它利用python-instagram库来访问 API,并包含一个指向源代码的链接(在 Django 上编写),该链接说明了 Instagram API 的各种实现。

更新:添加了移植到 Ruby on Rails的源代码。

于 2013-01-02T03:49:24.600 回答
6

我尝试了所有上述解决方案,但都没有奏效。我猜 Instagram 加速了他们的变化。然而,我尝试了浏览器控制台方法并玩了一会儿,发现这个命令给了我用户 ID。

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

您只需访问个人资料页面并在控制台中输入此命令。您可能需要刷新页面才能使其正常工作。(我不得不发布这个作为答案,因为我的声誉很低)

于 2018-04-17T08:09:49.897 回答
4

您需要使用Instagrams API将您的转换usernameid.

如果我没记错的话,您可以users/search用来查找用户名并从那里获取 id

于 2012-08-03T13:14:26.357 回答
4

在 2016 年6 月 1 日 Instagram API 更改后,这些答案中的大多数都无效。现在最好的解决方案就在这里。转到您在 instagram.com 上的提要,复制任何图片的链接地址,然后将其粘贴到该页面上的文本框中。像魅力一样工作。

于 2016-06-23T17:28:01.523 回答
3

要获取您的 ID,请向 Instagram APIusers/self/feed端点发出经过身份验证的请求。响应将包含用户名和用户 ID 等数据。

于 2012-08-03T13:49:48.260 回答
2

尽管它不再列在 API 文档页面上,但我发现一个线程提到您可以使用self它代替端点user-idusers/{user-id}它将返回当前经过身份验证的用户信息。

因此,users/self与显式调用相同,users/{some-user-id}并且包含用户 ID 作为有效负载的一部分。一旦您通过身份验证,只需调用 ,users/self结果将包括当前经过身份验证的用户的 id,如下所示:

{
    "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
        }
}
于 2012-09-16T00:26:18.440 回答
2

转到 api 控制台 并在文本字段中复制链接 https://api.instagram.com/v1/users/self 并使用您的 instagram id 和密码进行身份验证,您将获得您的 id 作为响应

于 2013-01-19T11:53:45.040 回答
2

您可以使用Instagram API(用户端点:/users/search)来做到这一点

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);
于 2013-02-20T12:29:42.870 回答
2

这可以通过Instagram 开发者网站上的apigee.com Instagram API 访问来完成。登录后,点击“/users/search”API调用。从那里您可以搜索任何用户名并检索其 ID。

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

于 2013-05-20T05:00:23.143 回答
2

那么你可以调用这个链接

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

于 2014-05-03T11:54:54.100 回答
2

如果使用隐式认证肯定有找不到 user_id

例如,我找到了一种方法:

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

你会做一个由 . 分隔的拆分单。obtenies 访问令牌和第一个元素

于 2014-09-18T17:21:30.767 回答
2

我认为最好、最简单和最安全的方法是在浏览器中打开您的 Instagram 个人资料,查看源代码并在主 javascript 代码中查找用户变量(ctrl+f "user":{" )。用户变量中的 id 号应该做你的身份证。

这是编写此答案时的代码(可以并且将来可能会更改):

"user":{"username":"...","profile_picture":"...","id":"..........","full_name":"..."}},
于 2015-03-28T19:16:57.083 回答
2

以下是从用户名中检索用户 ID 的方法:

$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;
于 2015-05-25T12:21:42.887 回答
2

这是一个非常适合我的非常简单的网站:

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

或者您可以执行以下操作,将“用户名”替换为您的 Instagram 用户名

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

或者您可以登录您的 Instagram 帐户并使用谷歌开发工具并查看已存储的 cookie。'ds_user_id' 是您的用户 ID

在此处输入图像描述

于 2017-06-22T11:09:56.997 回答
2

工作解决方案 2020 年 12 月 14 日

对于需要 Instagram 用户 ID 的 3rd 方工具(例如嵌入图像提要)的简单用途,我倾向于使用:

https://www.thekeygram.com/find-instagram-user-id/

因为它使复制和粘贴我正在寻找的 Instagram 用户 ID 变得非常容易。与大多数工具不同,我可以快速获得结果,它是免费的并且没有广告。我建议您在使用它之前先观看 youtube 视频,这样您就可以了解它的简单程度并了解它的使用方式:

https://www.youtube.com/watch?v=9HvOroY-YBw

对于更高级的用法,我建议:

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

(用请求的用户名替换用户名)

例如,要查找用户名“instagram”的用户 ID,您可以使用:

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

这是返回 JSON 响应的最先进的方式,如果您正在构建需要原始数据的应用程序,这非常棒。您可以将其保存在数据库中或构建某种类型的前端 UI 来显示它。示例:用于仪表板或网站。此外,使用 url 也很棒,因为您可以获得有关用户的其他属性,例如他们的总追随者人数和个人资料。

于 2020-12-15T03:46:21.463 回答
1
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)

于 2015-07-28T09:33:07.073 回答
1

工作解决方案~2018

我发现,只要您有访问令牌,您就可以在浏览器中执行以下请求:

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

实际上,访问令牌包含用户 ID(令牌的第一段):

<user-id>.1677aaa.aaa042540a2345d29d11110545e2499

您可以使用Pixel Union 提供的此工具获取访问令牌。

于 2018-07-20T01:58:37.393 回答
0

首先在 Instagram 上创建一个应用程序并为您的应用程序获取客户端 ID

http://instagram.com/developer/

现在只需通过替换您的用户名和您的客户 ID https://api.instagram.com/v1/users/search?q=[Your-username]&client_id=[Your-Client-Id]将以下 URL 复制粘贴到浏览器窗口

您将获得一个 Json 结果,其中包含有关您的帐户的一般信息以及您的数字用户 ID

于 2014-12-02T11:38:17.763 回答
0

2021 年更新

只需转到Facebook 应用程序选择您与 Instagram 连接的应用程序,您将看到您的Instagram ID: ********

在此处输入图像描述

注意https://www.instagram.com/{username}/?__a=1不适合我,所以如果你想使用 Instagram Graph API,这不是 2021 年的解决方案

于 2021-08-17T08:35:00.687 回答