3、用户信息接口:获取用户基本信息、获取用户粉丝列表、获取用户关注列表、用户关系分析
好,咱们今天聊聊抖音用户信息这块。
说实话,用户信息接口是我在抖音生态里用得最频繁的接口之一。为什么?因为不管是做用户画像、粉丝分析,还是搞精准营销,你都得先搞清楚「这个人是谁」。我刚开始做抖音数据时,就踩过不少坑——比如拿到的粉丝列表不全,或者关注列表里混了一堆营销号。嗯,今天我把这些经验都摊开来讲。
3.1 获取用户基本信息
先说说最基本的。抖音开放平台提供了 /user/info 这个接口。你传一个用户的 open_id 过去,它返回一堆信息。
返回的数据长这样:
{
"open_id": "xxx",
"nickname": "张三",
"avatar": "https://...",
"gender": 1,
"country": "中国",
"province": "广东",
"city": "深圳",
"follow_count": 1234,
"follower_count": 56789,
"total_favorited": 99999
}
这里有个细节——gender 字段。1 是男,2 是女,0 是未知。我遇到过不少新手直接拿这个字段做性别判断,结果发现大量用户是 0。为什么?因为很多用户没填性别。你想想看,抖音注册时性别不是必填项,所以这个字段的缺失率其实挺高的。
3.2 获取用户粉丝列表
粉丝列表接口是 /user/fans/list。这个接口有个特点——它分页返回,每页最多 100 条。
调用方式:
GET /user/fans/list?open_id=xxx&cursor=0&count=100
返回的数据里有个 has_more 字段,告诉你还有没有下一页。还有个 cursor 字段,是下一页的游标。
我个人习惯用 while 循环来拉取所有粉丝:
fans = []
cursor = 0
has_more = True
while has_more:
resp = api.get_fans_list(open_id, cursor, 100)
fans.extend(resp['data']['list'])
has_more = resp['data']['has_more']
cursor = resp['data']['cursor']
# 加个延时,别把接口打挂了
time.sleep(0.5)
这里有个坑——粉丝列表的排序。抖音返回的粉丝列表不是按关注时间倒序的,而是按某种「综合权重」排序。说白了,就是活跃度高的粉丝排前面。我做过对比测试,发现前 100 个粉丝的点赞、评论行为明显高于后面的。所以如果你要做抽样分析,别只取前几页,否则样本偏差会很大。
3.3 获取用户关注列表
关注列表接口是 /user/following/list。用法和粉丝列表基本一样,也是分页、游标。
但关注列表有个特殊的地方——它返回的是用户主动关注的人。这意味着你可以分析这个用户的兴趣偏好。比如一个美妆博主关注了大量化妆教程号,那她的内容偏好就很明显了。
我做过一个有意思的分析:对比一个用户的关注列表和粉丝列表,计算「关注/粉丝比」。如果这个比值大于 1,说明这个用户更倾向于「社交型」——他关注的人比关注他的人多。如果比值小于 0.1,那基本就是大 V 了。
| 关注/粉丝比 | 用户类型 | 典型特征 |
|---|---|---|
| > 1 | 社交型用户 | 喜欢互动,关注大量同类账号 |
| 0.1 - 1 | 普通用户 | 关注和粉丝相对均衡 |
| < 0.1 | 内容创作者/大V | 粉丝远多于关注,内容输出型 |
嗯,这个分类虽然粗糙,但在实际项目中挺实用的。我帮一个品牌方做 KOL 筛选时,就用这个指标排除了大量「互关型」账号——那些账号粉丝数看着不少,但真实影响力其实很弱。
3.4 用户关系分析
用户关系分析,说白了就是搞清楚「谁和谁有关系」。抖音提供了 /user/relation 接口,可以查询两个用户之间的关系。
返回的关系类型有几种:
- 0:无关系
- 1:A 关注了 B
- 2:B 关注了 A
- 3:互相关注
这个接口在社交网络分析里特别有用。我做过一个项目,需要找出某个领域的「意见领袖」。做法很简单:先拉取一批头部用户的粉丝列表,然后两两计算关系。如果两个大 V 互相关注,说明他们属于同一个圈子。如果一个大 V 关注了另一个但对方没回关,那前者可能是后者的「粉丝型大 V」——影响力相对弱一些。
最后说一句——接口调用频率有限制。抖音开放平台对用户信息接口的调用频率是 100 次/分钟。如果你要批量拉取大量用户数据,记得做好限流和重试机制。我曾经因为没注意这个限制,直接把一个测试账号的接口权限给封了,折腾了两天才恢复。
好了,用户信息接口这块就讲这么多。下一章咱们聊聊视频数据接口——那个更有意思,能挖出不少内容层面的洞察。