Instagram如何从用户名获取我的用户ID?

时间:2012-08-03 13:07:12

标签: instagram

我正在使用JSON在我的网站中嵌入我的图片Feed,网址需要我的用户ID,因此我可以检索此Feed。

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

25 个答案:

答案 0 :(得分:183)

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

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

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

E.g:

此网址将获取有关用户名为“锁定”的用户的所有信息

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

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

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

抱歉,因为我太忙了。希望这些信息可以帮到你们。 嗯,如果你愿意,可以随意给我一个投票。

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

答案 1 :(得分:38)

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

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

答案 2 :(得分:18)

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

https://api.instagram.com/v1/users/search?q=[ USER NAME]& client_id = [您的APP客户ID]

例如:

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”}]}

答案 3 :(得分:17)

自2016年6月1日api更改后,大多数方法都已过时

以下为我工作,

  • 在您的浏览器上访问Instagram说chrome,safari或firefox。
  • 启动开发人员工具,转到控制台选项。
  • 在命令提示符下输入以下命令并按Enter键:

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

如果您很幸运,您将获得第一次尝试,如果没有,请耐心等待,刷新页面并再试一次。继续做,直到你看到用户ID。祝你好运!!

答案 4 :(得分: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更改其页面格式,则必须调整此代码。

答案 5 :(得分:7)

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

答案 6 :(得分:6)

我编写了此工具,用于通过用户名Instagram User ID Lookup检索Instagram ID。

它利用python-instagram库来访问API,并包含一个link to the source code(在Django上编写),它说明了Instagram API的各种实现。

更新:添加了port to Ruby on Rails的源代码。

答案 7 :(得分:5)

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

$this->db->where('a.id', 1);
$this->db->where('a.id = b.id');

您只需访问个人资料页面并在控制台中输入此命令即可。您可能需要刷新页面才能使用此功能。 (由于我的声誉很低,我不得不将此作为答案发布)

答案 8 :(得分:4)

您需要使用Instagrams APIusername转换为id

如果我没记错,您可以使用users/search查找用户名并从中获取ID

答案 9 :(得分:3)

获取您的ID,向Instagram API users/self/feed端点发出经过身份验证的请求。除其他数据外,响应将包含用户名和用户ID。

答案 10 :(得分:3)

截至2018年10月14日的

工作解决方案没有访问令牌

搜索用户名:

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

示例:

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

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

答案 11 :(得分:3)

6/1/2016 Instagram API changes之后,大多数答案都无效。现在最好的解决方案是here。转到instagram.com上的Feed,复制任何图片的链接地址,然后将其粘贴到该页面的文本框中。工作就像一个魅力。

答案 12 :(得分:2)

如果您使用隐式身份验证必须遇到无法找到 user_id

的问题

我找到了一个例子:

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

你会分开单独分开吗? obtenies访问令牌和第一个元素

答案 13 :(得分:2)

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

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

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

答案 14 :(得分: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;

答案 15 :(得分:2)

答案 16 :(得分:2)

这可以通过Instagram开发者网站上的apigee.com Instagram API访问here来完成。登录后,单击“/ 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

答案 17 :(得分: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);

答案 18 :(得分:2)

这是一个非常简单易用的网站:

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

或者您可以执行以下操作来替换用户名&#39;用你的Instagram用户名

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

或者您可以登录您的Instagram帐户并使用google开发工具查看已存储的Cookie。 &#39; ds_user_id&#39;是您的用户ID

enter image description here

答案 19 :(得分:2)

Go to the api console&amp;在文本字段中复制链接https://api.instagram.com/v1/users/self,然后使用您的Instagram ID&amp;密码,您将获得您的身份证明

答案 20 :(得分:2)

虽然它不再列在API文档页面上,但我发现thread提到您可以使用self代替user-id users/{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
        }
}

答案 21 :(得分: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)

答案 22 :(得分:1)

工作解决方案〜2018

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

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

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

<user-id>.1677aaa.aaa042540a2345d29d11110545e2499

您可以使用this tool provided by Pixel Union获取访问令牌。

答案 23 :(得分:1)

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

对于简单的用法(如需要使用Instagram用户ID的第三方工具(例如嵌入图片供稿)),我倾向于使用:

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

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

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

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

function testFunc2() { const promises = [] for(let i = 0; i<1000; i++){ promises.push(new Promise((resolve) => { console.log(i); resolve() })); } return Promise.all(promises); } function logMe() { let i = 0; while (i < 5) { console.log("INSIDE LOG ME"); i++; } } (async() => { await testFunc2() logMe(); })();

(用所需的用户名替换用户名)

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

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

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

答案 24 :(得分:0)

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

http://instagram.com/developer/

现在,只需将您的用户名和客户端ID替换为将Url复制到浏览器窗口即可 https://api.instagram.com/v1/users/search?q=[Your-username]&client_id=[Your-Client-Id]

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