使用Youtube v3 API下载字幕

时间:2015-08-26 12:01:34

标签: youtube-api youtube-data-api

在尝试使用OAuth 2.0授权下载视频(不属于我)的字幕时,我收到403 Forbidden错误,其中指出“与请求相关联的权限不足以下载字幕轨道。请求可能没有得到适当的授权,或者视频订单可能没有为此标题启用第三方贡献。“在进一步的研究中,我发现其他人也遇到了与此相同的问题,除非视频是从他们自己的帐户上传的,否则无法下载字幕。

是否仍无法从视频中下载字幕轨道?像keepubs(dot)com这样的网站究竟如何设法做到这一点?

2 个答案:

答案 0 :(得分:2)

  

Captions: download文档

     

授权

     

此请求需要至少以下一项授权   范围(了解有关身份验证和授权的更多信息)。

     

范围https://www.googleapis.com/auth/youtube.force-ssl   https://www.googleapis.com/auth/youtubepartner

视频的所有者必须使用带有其中一个范围的Oauth2对您的应用进行身份验证。

答案 1 :(得分:0)

V3 API 不允许这样做。您必须向 youtube 发出请求,加载 javascript,打开字幕,然后查找 https://www.youtube.com/api/timedtext 请求。

它在查询字符串中使用签名、密钥和其他一些项目,如果没有这些项目,请求将失败。您可以使用任何 http 请求程序从服务器向 timedtext 端点发出请求。

其他想法:您可以通过在查询字符串中以某种方式自动打开字幕来自动加载该请求。这会让你的生活轻松很多。

您也可以尝试复制他们创建密钥和签名的方式,然后自己创建。我敢打赌它会以某种方式使用视频 ID。