YouTube api v3 获取视频类别
YouTube api v3 get video category
我正在将 v2 实现迁移到 v3,但我在理解 API v3 是如何分段时遇到了一些困难。我正在尝试从 API 获取视频详细信息,但例如,我无法找到视频类别名称的存储位置。
在 v2 实现中我有:
$title = $info->entry->title->{'$t'};
$content = nl2br($info->entry->{'media$group'}->{'media$description'}->{'$t'});
还有
$info->entry->category
我如何将其转化为 v3 实现?
目前 api (v2) 正在查询:
http://gdata.youtube.com/feeds/api/videos/
v3 等效项是什么?
这是一个 PHP 实现 btw.
提前致谢
V3 需要一个 API 密钥,即使仅用于 GET 请求。看看 V3 Quota.
除此之外,在以下位置查询 V3 API:
https://www.googleapis.com/youtube/v3/
获取视频的类别类似于:
https://www.googleapis.com/youtube/v3/videos?id=R90v8-Vea-Q&part=categoryID&key=[api-key]
不过,您需要使用 API 密钥更新它。否则它只会 return 一个错误。
在 V3 中,您不查询提要,而是查询 RESTful 端点。所以在你的情况下,如果你已经知道你想要的视频的 videoID,你将点击视频->列表端点,如下所示:
https://www.googleapis.com/youtube/v3/videos?part=snippet&id={comma separated list of video IDs}&key={YOUR_API_KEY}
生成的 json 数据包将有一个 'items' 列表;每个 'item' 都有一个 'categoryId'。
请注意,要获取有关类别 ID 本身的详细信息,您可以使用 videoCategories->list 端点,如下所示:
https://www.googleapis.com/youtube/v3/videoCategories?part=snippet&id={comma separated list of ids}&key={YOUR_API_KEY}
类别不会经常更改,因此您可能会缓存大量此类数据,但有时让您的应用跟上类别详细信息会很有帮助,因为 API 也 returns 类别的 auto-generated 渠道 ID、本地化信息(类别标题在其他语言和其他地区的名称)等内容
如果您还没有视频 ID,则不能使用视频->列表端点,而必须使用搜索->列表端点。这使您可以使用大量参数来过滤搜索...所有内容都在此处进行了描述:
https://developers.google.com/youtube/v3/docs/search/list
然而,这个问题是搜索端点的结果没有给你 categoryID,所以目前你必须从你的搜索结果中聚合所有 videoIDs 并调用视频 - >列出具有这些 ID 的端点以获取类别。
我正在将 v2 实现迁移到 v3,但我在理解 API v3 是如何分段时遇到了一些困难。我正在尝试从 API 获取视频详细信息,但例如,我无法找到视频类别名称的存储位置。
在 v2 实现中我有:
$title = $info->entry->title->{'$t'};
$content = nl2br($info->entry->{'media$group'}->{'media$description'}->{'$t'});
还有
$info->entry->category
我如何将其转化为 v3 实现?
目前 api (v2) 正在查询:
http://gdata.youtube.com/feeds/api/videos/
v3 等效项是什么? 这是一个 PHP 实现 btw.
提前致谢
V3 需要一个 API 密钥,即使仅用于 GET 请求。看看 V3 Quota.
除此之外,在以下位置查询 V3 API:
https://www.googleapis.com/youtube/v3/
获取视频的类别类似于:
https://www.googleapis.com/youtube/v3/videos?id=R90v8-Vea-Q&part=categoryID&key=[api-key]
不过,您需要使用 API 密钥更新它。否则它只会 return 一个错误。
在 V3 中,您不查询提要,而是查询 RESTful 端点。所以在你的情况下,如果你已经知道你想要的视频的 videoID,你将点击视频->列表端点,如下所示:
https://www.googleapis.com/youtube/v3/videos?part=snippet&id={comma separated list of video IDs}&key={YOUR_API_KEY}
生成的 json 数据包将有一个 'items' 列表;每个 'item' 都有一个 'categoryId'。
请注意,要获取有关类别 ID 本身的详细信息,您可以使用 videoCategories->list 端点,如下所示:
https://www.googleapis.com/youtube/v3/videoCategories?part=snippet&id={comma separated list of ids}&key={YOUR_API_KEY}
类别不会经常更改,因此您可能会缓存大量此类数据,但有时让您的应用跟上类别详细信息会很有帮助,因为 API 也 returns 类别的 auto-generated 渠道 ID、本地化信息(类别标题在其他语言和其他地区的名称)等内容
如果您还没有视频 ID,则不能使用视频->列表端点,而必须使用搜索->列表端点。这使您可以使用大量参数来过滤搜索...所有内容都在此处进行了描述:
https://developers.google.com/youtube/v3/docs/search/list
然而,这个问题是搜索端点的结果没有给你 categoryID,所以目前你必须从你的搜索结果中聚合所有 videoIDs 并调用视频 - >列出具有这些 ID 的端点以获取类别。