3

我使用 Youtube API v3 中给出的 PHP 示例代码: https ://developers.google.com/youtube/v3/docs/captions/download ,从我的 webapp 中的第 3 方、公开可用的 YouTube 视频下载字幕,即我没有将内容上传到 Youtube。

我可以访问字幕轨道列表,但无法使用接收列表中的字幕轨道 ID下载字幕。

尝试下载时出现的错误是:

调用 GET https://www.googleapis.com/youtube/v3/captions/Lw0e5xDNU17GFafOl8DcyeOtwzWJTf9V?tfmt=srt&alt=media 时出错:(404) 未找到

(我尝试删除 tfmt(可选参数),但仍然报错。)

但是尝试删除字幕的错误是不同的:

调用 DELETE 时出错 https://www.googleapis.com/youtube/v3/captions?id=Lw0e5xDNU17GFafOl8DcyeOtwzWJTf9V: (403) Forbidden

因此,似乎不禁止所有者以外的用户使用 captions.download(就像不禁止标题列表一样),因此我想将这些数据用于我的 web 应用程序。

任何帮助都将不胜感激。

谢谢,

尼基尔

4

2 回答 2

1

我刚刚在浏览器和 API 资源管理器中尝试了您提到的 URL,在这两种情况下,当我没有 oAuth 令牌时我收到了 401,当我有访问令牌时收到了 403(因为我不是所有者),所以端点按预期运行;根据文档,下载字幕需要视频所有者的 oAuth 同意。

也许,如果你得到的是 404,那么 PHP 库有问题吗?

于 2015-05-29T02:30:57.943 回答
1

我找到了另一种访问任何 YouTube 视频的字幕数据的方法。代码是用 Ruby 编写的。

从任何公开的 Youtube 视频中阅读 Youtube 成绩单(字幕)

效果很好,我只需要找到一种方法将其与我的 webapp 集成。

于 2015-06-11T10:34:31.413 回答