如何通过YouTube API v3的activities.list获取videoId?
能否通过YouTube API v3的activities.list获取videoId?
可以,完全可行,而且这个接口的配额成本仅为1单位,远低于search API的100单位。你没成功大概率是没抓对返回结构里的对应字段,或者没过滤正确的活动类型。
关键要点:
- 只有特定类型的活动会携带videoId,你需要先判断
snippet.type字段,符合以下类型的活动才包含视频ID:upload:用户上传视频的活动like:用户点赞视频的活动comment:针对视频的评论活动playlistItem:添加视频到播放列表的活动
- 视频ID的位置在返回项的
snippet.resourceId.videoId字段里,调用时必须指定part=snippet(如果需要更多细节可以加contentDetails) - 示例调用参数(以获取指定频道的活动为例):
GET /youtube/v3/activities?part=snippet&channelId=目标频道ID&key=你的API密钥
常见踩坑点:
- 如果你测试的活动是订阅频道、更新频道资料这类类型,本身就没有videoId,自然拿不到
- 忘记指定
part=snippet,导致返回结果里没有resourceId相关字段
内容的提问来源于stack exchange,提问作者Omer Prizner
相关产品推荐
相关产品推荐

