web-dev-qa-db-ja.com

Instagramどのようにユーザー名から私のユーザーIDを取得するには?

私はJSONを使用して私のウェブサイトに私の画像フィードを埋め込む過程にあります、私はこのフィードを検索することができるようにURLは私のユーザーIDを必要とします。

それで、私はどこで私のユーザーIDを見つける/得ることができますか?

105
Muhammad Reda

非常に遅い回答ですが、これがこのトピックの最良の回答だと思います。これが役に立つことを願っています。

以下のURLでリクエストが行われたときにユーザー情報を取得できます。

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

例えば:

このURLは、ユーザー名がtherockのユーザーに関するすべての情報を取得します。

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

私は6月20-2019年6月20日に更新、APIは現在公開されています。認証は不要です。

更新 - 1818年12月11日、私はこのエンドポイントがまだ動作することを確認する必要がありました。このサイトにリクエストを送信する前にログインする必要があります。パブリックエンドポイントではなくなったためです。ログイン手順も簡単です。これは私のデモです: https://youtu.be/ec5QhwM6fvc


このエンドポイントはまだ機能しているように見えます(ただし、もうパブリックエンドポイントではありません)。そのエンドポイントに追加情報を含むリクエストを送信する必要があります。 (F12キーを押して開発者ツールバーを開き、[ネットワーク]タブをクリックして要求を追跡します。)

私は忙しすぎるのですみません。この情報がお役に立てば幸いです。うーん、あなたがしたい場合は私に賛成票をください。


Cameronjoneswebさんは、2018年4月12日に更新され、このエンドポイントはもう機能しないと言っています。このエンドポイントにアクセスしようとすると、403ステータスコードが返されます。


184
Thinh Vu

このURLを、検索したいユーザー名とアクセストークンと共にブラウザに入力します。

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

ユーザー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

結果:

{"メタ":{"コード":200}、 "データ":[{"ユーザー名": "zeeshanakhter2009"、 "bio": "http://about.me/zeeshanakhter"、 "ウェブサイト": "http:" //zeeshanakhter.com","profile_picture":"http://images.ak.instagram.com/profiles/profile_202090411_75sq_1377878261.jpg","full_name":" Zeehan Akhter "、" id ":" 202090411 "}]}

18
Zeeshan Akhter

ほとんどのメソッドは、2016年6月以降廃止されました。

以下は私のために働いた、

  • ブラウザでinstagramにアクセスするには、クロム、サファリ、Firefoxのいずれかをご利用ください。
  • 開発者ツールを起動し、コンソールオプションに進みます。
  • on commandコマンドの下にプロンプ​​トを入力し、Enterキーを押します。

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

運がよければ、あなたは最初の試みを受けるでしょう、そうでなければ、辛抱して、ページを更新してもう一度やり直してください。 user-idが表示されるまで続けてください。がんばろう!!

17
f-society

APIを使用する代わりに、Instagramユーザーページを調べてIDを取得することができます。 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がページフォーマットを変更した場合は、このコードを修正する必要があります。

14

現在、ユーザー名からユーザーIDを取得するための直接的なInstagram APIはありません。 GET/users/search APIを呼び出して結果を繰り返し、usernamenameフィールドの値が自分のユーザー名と等しいかどうかを確認してから、idを取得する必要があります。

7
null

私はユーザー名でInstagramのIDを取得するためにこのツールを書きました: InstagramのユーザーIDの検索

これは python-instagram ライブラリを利用してAPIにアクセスし、 ソースコードへのリンク (Djangoに書かれています)を含み、Instagram APIのさまざまな実装を示しています。

更新Ruby on Railsへの移植 のソースコードを追加。

6
zeantsoi

私は前述の解決策をすべて試しましたが、うまくいきません。 Instagramがそれらの変化を加速させたと思います。しかし、私はブラウザのコンソールメソッドを試してみて、少し遊んでみたところ、このコマンドがユーザーIDを与えてくれました。

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

プロファイルのページにアクセスしてコンソールにこのコマンドを入力するだけです。これを機能させるには、ページを更新する必要があるかもしれません。 (評判が悪いので、これを答えとして投稿しなければなりませんでした)

5
ionpan

usernameidに変換するにはInstagrams APIを使用する必要があります。

私の記憶が正しければ、あなたはusers/searchを使ってユーザー名を見つけ、そこからIDを取得します。

4
mlishn

あなたのIDを取得するには、Instagram API users/self/feed エンドポイントに認証されたリクエストを行います。応答には、他のデータの中でも、ユーザー名とユーザーのIDが含まれます。

3
wehal3001

これらの回答のほとんどは、 6/1/2016 Instagram APIの変更 の後は無効になります。最善の解決策は ここ です。 instagram.comのあなたのフィードに行き、あなたの写真のどれかのためのリンクアドレスをコピーして、そしてそのページのテキストボックスにそれを貼り付けなさい。魅力のように働いた。

3
Southerneer

実用的な解決策アクセストークンなしで 2014年10月14日現在。

ユーザー名を検索します。

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

例:

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

これは検索クエリです。完全に一致するエントリを返信で見つけて、そのエントリからユーザIDを取得します。

3
lashgar

暗黙的認証を使用している場合は、認証を見つけることができないという問題があるはずです。 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 . アクセストークンと最初の要素への従順

2
Diego Machaca

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);
2

これは私にとってうまくいく本当に簡単なウェブサイトです:

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

または、「username」をInstagramのユーザー名に置き換えて次の操作を実行できます。

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

または、InstagramのアカウントにログインしてGoogleの開発ツールを使用し、保存されているCookieを確認することもできます。 'ds_user_id'はあなたのユーザーIDです

enter image description here

2
BenEgan1991

これは、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

2
preynolds

さてあなたはちょうどこのリンクを呼び出すことができます

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

2
A Khudairy

それはもうAPI docページにはリストされていませんが、 thread を見つけました。 user-id エンドポイントにusers/{user-id}の代わりにselfを使うことができると述べています。現在認証されているユーザーの情報.

したがって、users/selfusers/{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
        }
}
2
markquezada

ユーザー名から自分のユーザー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;
2
Nezar Fadle

apiコンソールに移動します &テキストフィールドにリンクhttps://api.instagram.com/v1/users/selfをコピーして、あなたのInstagramのIDとパスワードを使用して認証し、あなたはそれに応じてあなたのIDを取得します

2
sharmaravi

一番簡単で安全な方法はInstagramのプロフィールを開くをブラウザで開く、ソースコードを見るそしてユーザー変数を探す(ctrl)メインのJavaScriptコード内の+ f "user":{")。user変数内のID番号はあなたのIDです。

これはこの答えを書いている瞬間にどのように見えたかのコードです(それは可能で、おそらく将来変更されるでしょう):

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

実用的な解決策〜2018年

アクセストークンがある場合は、ブラウザで次のリクエストを実行できます。

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

実際、アクセストークンにはユーザーID(トークンの最初のセグメント)が含まれています。

<user-id>.1677aaa.aaa042540a2345d29d11110545e2499

Pixel Unionが提供するこのツール を使ってアクセストークンを取得できます。

1
Allan of Sydney
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)

1
Ion Bazan

まずInstagramでアプリケーションを作成し、あなたのアプリケーションのクライアントIDを取得します

http://instagram.com/developer/

あなたのユーザー名とあなたのクライアントID を置き換えて、ブラウザウィンドウに次のURLを貼り付けてコピーするだけです。 = [あなたのクライアントID]

あなたはあなたのNumericユーザーIDと共にあなたのアカウントに関する一般的な情報を含むJson結果を得るでしょう。

0
Akshay Khale