从渠道ID获取youtube用户名

时间:2014-08-19 12:34:18

标签: youtube-data-api

如何使用youtube频道ID获取频道的用户名?

E.g。 UCnpaBg-u_kHwzuPyaMcyJ0w是Sony Max的频道ID

现在如何获得用户名" maxindia"来自Youtube v3 Api

2 个答案:

答案 0 :(得分:3)

使用API​​时(例如在developers.google.com上),使用part=snippet和您提供的channelId,可以在其中一个channelTitle对象中找到items/snippet

以下是截断的回复:

{
  ...
  "items": [
    {
      ...
      "snippet": {
        ...
        "channelTitle": "maxindia",
        ...
      }
    }
}

答案 1 :(得分:1)

这是一个Python解决方案。它试图从视频ID中找出频道信息。一些较新的频道只有频道ID,没有用户名。

import requests

API_KEY = "..."

def get_channel_id(vid):
    url = "https://www.googleapis.com/youtube/v3/videos?id={vid}&key={api_key}&part=snippet".format(
        vid=vid, api_key=API_KEY
    )
    d = requests.get(url).json()
    return d['items'][0]['snippet']['channelId']

def get_channel_title(cid):
    url = "https://www.googleapis.com/youtube/v3/search?part=snippet&channelId={cid}&key={api_key}".format(
        cid=cid, api_key=API_KEY
    )
    d = requests.get(url).json()
    return d['items'][0]['snippet']['channelTitle']

def main():
    video_id = "..."
    channel_id = get_channel_id(video_id)
    channel_title = get_channel_title(channel_id)
    print(channel_id)
    print(channel_title)