如何获取Instagram个人资料?如何通过指定API获取自身真实姓名与头像
获取Instagram个人资料及API调用指南
嘿,我来帮你把这两个问题掰扯清楚——不管是普通方式查看Instagram个人资料,还是用官方API拿到自己的真实姓名和头像,都给你讲得明明白白:
一、普通方式获取Instagram个人资料
- 如果目标账号是公开账号:直接在浏览器输入
https://www.instagram.com/[用户名]/就能看到主页上的公开信息,包括头像、用户名、简介、帖子/粉丝/关注数这些。但如果是私密账号,除非你关注对方且通过了审核,否则啥都看不到。 - 划重点:这种方式只能看公开展示的内容,没法拿到用户的真实姓名(除非用户主动写在简介里),而且绝对别写脚本批量爬取——Instagram的反爬机制特别严,轻则限制访问,重则直接封IP。
二、用官方API获取自身的真实姓名与头像
官方提供了两个API,适用场景不一样,我分开给你讲:
2.1 Instagram Basic Display API(适合个人用户)
这个API是给个人开发者准备的,专门用来获取授权用户自己的Instagram账号信息(毕竟要走OAuth授权流程,得你自己同意应用访问你的数据)。步骤如下:
- 先去Facebook开发者平台注册账号,创建一个应用,然后添加「Instagram Basic Display」这个产品。
- 生成授权URL,引导自己(也就是授权用户)访问这个URL,权限一定要选
user_profile——这个权限就能拿到真实姓名、头像这些基础信息。授权成功后会得到一个授权码。 - 用授权码调用
GET /oauth/access_token接口,换取短期访问令牌;如果需要长期使用,还可以把短期令牌换成有效期60天的长期令牌。 - 最后用访问令牌调用
GET /me接口,指定要获取的字段:
示例curl请求:
返回的JSON格式大概是这样:curl -X GET "https://graph.instagram.com/me?fields=id,username,full_name,profile_picture_url&access_token=YOUR_ACCESS_TOKEN"
这里的{ "id": "123456789", "username": "my_insta_handle", "full_name": "张三", "profile_picture_url": "https://scontent.cdninstagram.com/..." }full_name就是真实姓名,profile_picture_url就是头像的直接链接。
2.2 Instagram Graph API(适合企业/创作者账号)
这个API主要服务于企业、品牌或者创作者账号,前提是你的Instagram账号已经转换成专业账号(企业或创作者类型),并且绑定了一个Facebook Page。步骤如下:
- 先把你的Instagram账号转成专业账号,绑定到一个Facebook Page;然后在Facebook开发者平台创建应用,添加「Instagram Graph API」产品。
- 获取Facebook Page的访问令牌,权限需要勾选
pages_show_list和instagram_basic。 - 用Page令牌调用
GET /{page-id}/accounts接口,拿到和这个Page绑定的Instagram账号ID。 - 用拿到的Instagram账号ID调用接口获取信息:
示例curl请求:
响应里的curl -X GET "https://graph.facebook.com/v18.0/{instagram-account-id}?fields=id,username,name,profile_picture_url&access_token=YOUR_PAGE_ACCESS_TOKEN"name就是真实姓名,profile_picture_url是头像链接。
一些重要提醒
- 不管用哪个API,都必须严格遵守Instagram的平台政策,绝对不能滥用获取到的数据,比如未经授权公开、售卖用户信息,不然你的应用会被直接下架,账号也可能受限。
- Basic Display API只能获取授权用户自己的信息,没法拿到其他用户的;Graph API如果是企业账号,还能获取关联账号的信息,但同样要符合权限要求,不能越界。
内容的提问来源于stack exchange,提问作者Daniil Chizhevskii




