使用 Instagram 基本显示 API 获取用户媒体

Posted

技术标签:

【中文标题】使用 Instagram 基本显示 API 获取用户媒体【英文标题】:Getting User Media with Instagram Basic Display API 【发布时间】:2020-05-05 09:16:54 【问题描述】:

我想使用 Instagram 显示 API 从帐户中检索照片,但在文档中找不到任何内容。

最接近的是https://developers.facebook.com/docs/instagram-basic-display-api/guides/getting-profiles-and-media?locale=en_US,但它只允许您恢复连接到 API 的人的照片。但是,我希望能够从用户名或主题标签中恢复任何人的照片。

GET /me?fields=media&access_token=access-token

我还发现了这个https://developers.facebook.com/docs/instagram-basic-display-api/reference/user/media,但没有说明如何从用户名中获取某人的用户 ID。

GET https://graph.instagram.com/user-id/media?access_token=access-token

我找到了一种不使用 Instagram API 的方法(来源 https://***.com/a/33783840/12739212),但我担心他们会更改代码,因此这个解决方案将不再有效,所以我想使用 Instagram API 来实现

p>
        $html = file_get_contents('https://instagram.com/' . $username . '/');
        preg_match('/_sharedData = (.*);<\/script>/', $html, $matches);
        $profil_data = json_decode($matches[1])->entry_data->ProfilePage[0]->graphql->user;
        $data_edges = $profil_data->edge_owner_to_timeline_media->edges;

        foreach ($data_edges as $key => $value) 
            $img_url = $value->node->display_url;
            echo "<img src=" . $img_url . ">";
        

提前致谢。

【问题讨论】:

目前无法通过 Instagram Basic Display API 从未经身份验证的用户那里获取公共数据。 【参考方案1】:

您好,我在 link 中找到了本教程,但它很麻烦,我宁愿继续更改代码而不是做这些事情

【讨论】:

【参考方案2】:

所以我最终放弃了使用 API 并改用了这个库 https://github.com/postaddictme/instagram-php-scraper

【讨论】:

以上是关于使用 Instagram 基本显示 API 获取用户媒体的主要内容,如果未能解决你的问题,请参考以下文章

Instagram 基本显示 API 分页

如何从 Instagram API 获取用户名?

Instagram 基本显示 API

如何为 Instagram 基本显示 API 实现 Instagram 或 Facebook 登录按钮的继续?

在 Instagram 基本显示 API 中出现“应用程序限制”错误

2020 年 Instagram 追随者计数端点