当前位置: 首页 > 知识库问答 >
问题:

获取用户拥有的 YouTube 频道列表

洪和平
2023-03-14

我正在尝试获取用户使用 YouTube 数据 API (V3) 制作的频道 ID 列表。我该怎么做?我有在授权后获得的用户访问令牌。

我想获取每个频道的订阅者计数,我已经通过传递一个我知道的频道ID完成了,但这是为了测试目的。

我使用来自< code > org . spring framework . web . client 的< code>RestTemplate来发出请求。

RestTemplate restTemplate = new RestTemplate();
MultiValueMap<String, String> parameters = new LinkedMultiValueMap<>();

//what parameters to set?

URIBuilder uriBuilder = URIBuilder.fromUri("https://www.googleapis.com/youtube/v3/channels");

我试着实现一个解决方案,就像这个SO回答建议的那样,但是甚至不能提出一个好的请求。

共有2个答案

阳宗清
2023-03-14

如果您收到错误400:

错误的请求

  • 不兼容参数 - 请求指定两个或多个不能在同一请求中使用的参数
  • invalidFilters - 请求指定了无效的筛选器参数。
  • invalidPageToken - 请求指定了无效的页面令牌。
  • *8missingRequiredParameter** - 请求缺少必需参数。
  • unexpected参数 - 请求指定意外参数。

检查您收到的错误请求错误描述,将其与示例代码和API参考指南进行比较和更改,以遵循正确的格式。

尝试使用 Java 代码示例来熟悉 Youtube 数据 API。

来源:

https://developers.google.com/youtube/v3/code_samples/

https://developers.google.com/api-client-library/java/

https://github.com/youtube/api-samples

https://youtu.be/HTr778JctJE?list = plhbgtdawkxed 0 kpo-qtz v1 GC 7 uhprrpgn

逄俊贤
2023-03-14

看起来你已经有了正确的方法,使用< code > https://www . Google APIs . com/YouTube/v3/channels 。如果您只想获取经过身份验证的用户的通道id,可以使用参数< code>part=id和< code>mine=true。

要使用访问令牌,您可以遵循这里的方法之一——要么在HTTP请求头中包含< code > Authorization:Bearer ACCESS _ TOKEN ,要么作为另一个查询参数< code > ACCESS _ TOKEN = ACCESS _ TOKEN 。

请求示例:

https://www.googleapis.com/youtube/v3/channels?
    part=id&
    mine=true&
    access_token=ACCESS_TOKEN

在< code>items/id字段中带有渠道id的响应示例:

{
 "kind": "youtube#channelListResponse",
 "etag": ETAG,
 "pageInfo": {
  "totalResults": 1,
  "resultsPerPage": 1
 },
 "items": [
  {
   "kind": "youtube#channel",
   "etag": ETAG,
   "id": "UCBR8-60-B28hp2BmDPdntcQ"
  }
 ]
}

对于如何使用Spring框架进行这些请求,我没有太多指导-如果您仍然有问题,我建议您验证它们是否在Spring之外工作。您可以在通道列表页面上找到更多信息,要测试生成和使用OAuth访问令牌,请尝试OAuth 2.0。

 类似资料:
  • 我正在使用https://developers.google.com/youtube/的这些API,但是我想不出,给定一个youtube频道地址,如何获得带有相关信息的视频列表(至少是单个视频url和标题)

  • 我想获取具有Id的单个频道的所有视频。我只得到频道信息的问题。这是我正在使用的链接: https://g data . YouTube . com/feeds/API/users/UCD CIB _ pnqpr 0m _ kkdg 4d z5 a?v=2

  • 我正试图找出在给定频道频道ID的情况下获取频道上传播放列表ID的最佳方法。E、 g.对于具有channelID的信道 UC9CuvdOVfMPvKCiwdGKL3cQ 对应的上传playlistID为 UU9CuvdOVfMPvKCiwdGKL3cQ 请注意,第二个字符已从“C”更改为“U” 我可以通过字符串操作进行此转换,但我很好奇是否有更好,更不麻烦的方式通过官方youtube api找到上传

  • 我正在尝试使用频道的视频,https://www.googleapis.com/youtube/v3/search?order=date

  • 问题内容: 我想获取特定频道的所有视频网址。我认为带python或java的json是一个不错的选择。我可以使用以下代码获取最新的视频,但是如何获得所有视频链接(> 500)? 问题答案: 将最大结果从1增加到您想要的任何数目,但是请注意,他们不建议一次通话就抓住太多,并且将您限制为50(https://developers.google.com/youtube/2.0/developers_gu

  • 我想获得我在youtube帐户上拥有的所有频道。 我做了什么: 阅读上的文档https://developers.google.com/youtube/v3/docs/channels/list. 通过我的帐户进行身份验证。 向GET发送GET请求https://www.googleapis.com/youtube/v3/channels?part=snippet 有可能获得我所有的频道吗?如果可