Получить все идентификаторы плейлистов из идентификатора канала - youtube api v3

В настоящее время я изучаю использование youtube api. Я хочу получить все playlists id из channel id. Я прочитал документацию и увидел, что для этой задачи я могу использовать youtube.channels.list. Я провел базовое тестирование на api_page. Тем не менее, я не могу понять, что params использовать для получения playlist id. Как я могу получить все playlist ids из заданного channel id?

https://www.googleapis.com/youtube/v3/channels?part=id&id=UCF0pVplsI8R5kcAqgtoRqoA&key={YOUR_API_KEY}

Ответ 1

Простой способ:

С API YouTube v3 с реестром playlists.list

Используйте эти параметры, чтобы получить идентификатор плейлистов канала:

part: 'snippet'
channelId: 'UCBkNpeyvBO2TdPGVC_PsPUA'

https://www.googleapis.com/youtube/v3/playlists?part=snippet&channelId=UCBkNpeyvBO2TdPGVC_PsPUA&key= {YOUR_API_KEY}

Выход:

 "items": [
  {

   "kind": "youtube#playlist",
   "etag": "\"PSjn-HSKiX6orvNhGZvglLI2lvk/K21sgPQuMRCjhSMBjm3v3n5tl1o\"",
   "id": "PL2qcutlDmS0CnyV8Jcbl2d7yFxd2iGg67",
   "snippet": {
    "publishedAt": "2014-07-08T03:13:37.000Z",
    "channelId": "UCBkNpeyvBO2TdPGVC_PsPUA",
    "title": "These Things Happen Series",
    "description": "",
    "thumbnails": {
     "default": {
      "url": "https://i.ytimg.com/vi/93mgU_VXZrA/default.jpg",
      "width": 120,
      "height": 90
     },
     "medium": {
      "url": "https://i.ytimg.com/vi/93mgU_VXZrA/mqdefault.jpg",
      "width": 320,
      "height": 180
     },
     "high": {
      "url": "https://i.ytimg.com/vi/93mgU_VXZrA/hqdefault.jpg",
      "width": 480,
      "height": 360
     },
     "standard": {
      "url": "https://i.ytimg.com/vi/93mgU_VXZrA/sddefault.jpg",
      "width": 640,
      "height": 480
     },
     "maxres": {
      "url": "https://i.ytimg.com/vi/93mgU_VXZrA/maxresdefault.jpg",
      "width": 1280,
      "height": 720
     }
    },
    "channelTitle": "GEazyTV"
   }
  },
  {

   "kind": "youtube#playlist",
   "etag": "\"PSjn-HSKiX6orvNhGZvglLI2lvk/5ifuvTYKbyV6DUPqbTa2bnO2jWY\"",
   "id": "PL2qcutlDmS0B0jwHOQYzgRhJpnxDwPBHc",
   "snippet": {
    "publishedAt": "2014-06-05T07:36:58.000Z",
    "channelId": "UCBkNpeyvBO2TdPGVC_PsPUA",
    "title": "B-Sides",
    "description": "",
    "thumbnails": {
     "default": {
      "url": "https://i.ytimg.com/vi/f7Ua9wKvVtI/default.jpg",
      "width": 120,
      "height": 90
     },
     "medium": {
      "url": "https://i.ytimg.com/vi/f7Ua9wKvVtI/mqdefault.jpg",
      "width": 320,
      "height": 180
     },
     "high": {
      "url": "https://i.ytimg.com/vi/f7Ua9wKvVtI/hqdefault.jpg",
      "width": 480,
      "height": 360
     },
     "standard": {
      "url": "https://i.ytimg.com/vi/f7Ua9wKvVtI/sddefault.jpg",
      "width": 640,
      "height": 480
     },
     "maxres": {
      "url": "https://i.ytimg.com/vi/f7Ua9wKvVtI/maxresdefault.jpg",
      "width": 1280,
      "height": 720
     }
    },
    "channelTitle": "GEazyTV"
   }
  },
...

Это примерный пример со случайным каналом.

Если вы не знаете, как получить channelID канала, используйте ressource channels.list:

С помощью этих параметров, чтобы получить идентификатор видео в списке воспроизведения:

part: 'id'
forUsername: 'channel_name'

https://www.googleapis.com/youtube/v3/channels?part=id&forUsername=GEazyTV&key= {YOUR_API_KEY}

 "items": [
  {

   "kind": "youtube#channel",
   "etag": "\"PSjn-HSKiX6orvNhGZvglLI2lvk/vIwM6ev74Om0AOupX26jJoEDELU\"",
   "id": "UCBkNpeyvBO2TdPGVC_PsPUA"
  }

Ответ 2

Я не уверен, как я столкнулся с этим решением, но я обнаружил, что если вы выполните следующие действия, вы можете получить список воспроизведения для использования:

  • Создайте ключ API с помощью консоли API Google.

  • Используйте
    https://www.googleapis.com/youtube/v3/channels?part=contentDetails&key=[KEY FROM GOOGLE API CONSOLE]&id=[CHANNEL ID]
    где вы заменяете все, включая скобки, с соответствующей информацией (я обнаружил, что идентификаторы каналов легко доступны, поскольку они обычно находятся в URL-адресе. Плейлист-идентификатор - это тот, который имеет тенденцию быть трудным).

  • Полученный фид URL-адреса на шаге 2 должен содержать объект uploads, содержащий список воспроизведения, который используется в URL-адресе на шаге 4.

  • Используйте
    https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&playlistId=[PLAYLIST ID RETRIEVED IN STEP 3 HERE]&key=[KEY FROM GOOGLE API CONSOLE]

Ссылка с шага 4 - это то, что должно использоваться в приложении.

Это работает для меня каждый раз, и я интегрирую API v3 для YouTube во многих приложениях. Я полностью согласен с @utkanos comment, что, хотя @mpgn answer работает иногда, это, безусловно, t для всех каналов.