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

ユーザーIDとユーザー詳細を簡単に取得

https://api.instagram.com/v1/users/search?q=[ ユーザー名]&client_id=[あなたのアプリのクライアント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 に答える
14

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 がページ形式を変更した場合は、このコードを変更する必要があります。

于 2014-01-22T00:03:37.037 に答える
7

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

于 2014-09-19T15:03:35.667 に答える
6

前述のすべての解決策を試しましたが、どれも機能しません。Instagramは彼らの変化を加速させたと思います。しかし、ブラウザ コンソール メソッドを試してみて、少し遊んだところ、ユーザー ID を取得するこのコマンドが見つかりました。

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

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

于 2018-04-17T08:09:49.897 に答える
6

ユーザー名で Instagram ID を取得するためのツールを作成しました: Instagram User ID Lookup

python-instagramライブラリを利用して API にアクセスし、 Instagram API のさまざまな実装を示すソース コード(Django で作成) へのリンクを含めます。

更新: Ruby on Rails に移植するためのソース コードを追加しました。

于 2013-01-02T03:49:24.600 に答える
4

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

于 2016-06-23T17:28:01.523 に答える
4

Instagrams APIに変換するにusernameは、を使用する必要がありますid

私が正しく覚えていればusers/search、ユーザー名を見つけてそこからIDを取得するために使用します

于 2012-08-03T13:14:26.357 に答える
3

IDを取得するには、InstagramAPIusers/self/feedエンドポイントに認証済みのリクエストを送信します。応答には、他のデータの中でも、ユーザー名とユーザーのIDが含まれます。

于 2012-08-03T13:49:48.260 に答える
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

暗黙的な認証を使用している場合は、 user_id

たとえば、次の方法を見つけました。

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

で区切られたスプリットシングルをやってくれませんか?トークンと最初の要素にアクセスする必要があります

于 2014-09-18T17:21:30.767 に答える
2

API ドキュメント ページにはもうリストされていませんが、エンドポイントの代わりに使用でき、現在認証されているユーザーの情報を返すことを言及しているスレッドを見つけました。selfuser-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

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

最も簡単で安全な方法は、ブラウザーでInstagram プロフィールを開き、ソース コード表示して、メインの JavaScript コード内でユーザー変数(ctrl+f "user":{" ) を探すことだと思います。ユーザー変数内の ID 番号は、あなたのIDになります。

これは、この回答を書いている瞬間のコードです(将来変更される可能性があり、おそらく変更される予定です):

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

API コンソールに移動してテキスト フィールドに リンク https://api.instagram.com/v1/users/self をコピーし、Instagram ID とパスワードを使用して認証すると、応答で ID が返されます

于 2013-01-19T11:53:45.040 に答える
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 に答える
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] 

ユーザー「自分」を返します (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 をブラウザー ウィンドウにコピー ペーストするだけです 。

アカウントに関する一般情報と数値ユーザー ID を含む Json Result を取得します。

于 2014-12-02T11:38:17.763 に答える