3

YouTube API 3.0を使用していますが、作成者で動画を検索したいと思います。どうすればこれを達成できますか?

Pythonクライアントライブラリを使用しています。

4

1 に答える 1

5

YouTube Data API v3 では、ユーザーのチャンネルから UploadsPlaylist を見つける必要があり、ユーザーはそのチャンネルの PlaylistItems を検索します。

たとえば、GoogleDevelopers のアップロードを見つけたい場合は、最初に channel_id を見つけます。

ユーザーの channel_id がわからない場合は、検索リソース (kind を「channel」に設定) を呼び出して検索する必要があります。

https://www.googleapis.com/youtube/v3/search?part=id&maxResults=1&q=GoogleDevelopers&type=channel&key={YOUR_API_KEY}

戻り値:

{
 "kind": "youtube#searchListResponse",
 "etag": "\"Sja0zsjNVqBAv0D_Jpz6t1GyTzk/fm4P2RLxOAO0xdASI5BagD86H8A\"",
 "pageInfo": {
  "totalResults": 21,
  "resultsPerPage": 1
 },
 "nextPageToken": "CAEQAA",
 "items": [
  {
   "id": {
    "kind": "youtube#channel",
    "channelId": "UC_x5XG1OV2P6uZZ5FSM9Ttw"
   },
   "kind": "youtube#searchResult",
   "etag": "\"Sja0zsjNVqBAv0D_Jpz6t1GyTzk/q4hYefapiMoagc7b_3bYaVZvSJo\""
  }
 ]
}

ご覧のとおり、channelId = UC_x5XG1OV2P6uZZ5FSM9Ttw です。

チャンネル リソースの contentDetais 部分を呼び出して、アップロード プレイリストを見つけます。

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

これはこれを返します:

{
 "kind": "youtube#channelListResponse",
 "etag": "\"Sja0zsjNVqBAv0D_Jpz6t1GyTzk/ZouMU1qBRkF6DgacOLHE88Xk144\"",
 "pageInfo": {
  "totalResults": 1,
  "resultsPerPage": 1
 },
 "items": [
  {
   "id": "UC_x5XG1OV2P6uZZ5FSM9Ttw",
   "kind": "youtube#channel",
   "etag": "\"Sja0zsjNVqBAv0D_Jpz6t1GyTzk/khrrkvk8Tl0XWRZoN66zqloSJM4\"",
   "contentDetails": {
    "relatedPlaylists": {
     "uploads": "UU_x5XG1OV2P6uZZ5FSM9Ttw"
    }
   }
  }
 ]
}

ご覧のとおり、彼らのアップロード プレイリスト ID は UU_x5XG1OV2P6uZZ5FSM9Ttw です。

PlaylistItems リソースを呼び出して、Google デベロッパーがアップロードした動画を取得します。

https://www.googleapis.com/youtube/v3/playlistItems?part=id%2Csnippet%2CcontentDetails&playlistId=UU_x5XG1OV2P6uZZ5FSM9Ttw&key={YOUR_API_KEY}

于 2013-02-07T21:27:05.813 に答える