无法列出我自己的 Youtube 视频



我正在尝试获取我在YouTube 中发布的视频列表

使用浏览器时:

https://developers.google.com/youtube/v3/docs/search/list

它生成了以下查询

得到https://www.googleapis.com/youtube/v3/search?part=snippet&forMine=true&密钥={YOUR_API_key}

以及以下(400)响应:

{
 "error": {
  "errors": [
   {
    "domain": "youtube.search",
    "reason": "invalidSearchFilter",
    "message": "Invalid combination of search filters and/or restrictions.",
    "locationType": "parameter",
    "location": ""
   }
  ],
  "code": 400,
  "message": "Invalid combination of search filters and/or restrictions."
 }
}

这可以通过向Youtube v3 API发出2个请求来完成:

  1. 您需要为此提出的第一个请求是获取您的上传的视频播放列表:

    这是对url:的GET请求

    "https://www.googleapis.com/youtube/v3/channels"
    

    带标题:

    "Content-type": "application/json",
    "Authorization": "Bearer %s" % {YOUR ACCESS TOKEN}
    

    和参数:

    "part": "contentDetails",
    "mine": "true",
    "key": {YOUR APPLICATION KEY}
    

    从您想要访问的响应:

    response_body["items"][0][contentDetails][relatedPlaylists][uploads]

  2. 第二个请求是获取您拥有的所有视频您上传的播放列表。

    首先向URL:发出get请求

    "https://www.googleapis.com/youtube/v3/playlistItems"
    

    发送标头:

    "Content-type": "application/json",
    "Authorization": "Bearer %s" % {YOUR AUTH TOKEN}
    

    和参数:

    "part": "snippet", {Add other "parts" here like stats if you want that info.}
    "maxResults": {MORE THAN 50? PAGINATION IS NEEDED / SEE BELOW},
    "playlistId": {FROM ABOVE},
    "key": {YOUR API KEY}
    

    响应将包含您的视频列表及其相关信息。

    如果(同时)响应中有response_body["nextPageToken"],则需要使用参数"pageToken"重新发送请求:{NEXT PAGE TOKEN}以获得其余分页结果。

在设置forMine参数时,还必须将type参数设置为video,以便API知道要返回什么类型的资源。

相关内容

  • 没有找到相关文章

最新更新