Невозможно загрузить субтитры в Youtube API v3

Я использую пример кода PHP, указанный в Youtube API v3: https://developers.google.com/youtube/v3/docs/captions/download , чтобы загрузить подписи от сторонних, общедоступных видео YouTube в моем веб-приложении, т. е. я НЕ загрузил контент на Youtube.

Я могу получить доступ к список дорожек с титрами, но не в состоянии скачать заголовок, используя идентификатор дорожки заголовка из полученного списка.

Ошибка, которая появляется при попытке ЗАГРУЗИТЬ:

Ошибка вызова GET https: //
www.googleapis.com/youtube/v3/captions/Lw0e5xDNU17GFafOl8DcyeOtwzWJTf9V?tfmt=srt&альт = СМИ:
(404 Не Найдено

(Я попытался удалить tfmt (необязательный параметр), но все равно выдает ошибку.)

Но ошибка отличается при попытке УДАЛИТЬ подписи:

Ошибка вызова DELETE https: //
www.googleapis.com/youtube/v3/captions?id=Lw0e5xDNU17GFafOl8DcyeOtwzWJTf9V:
(403) Запрещено

Поэтому кажется, что captions.download НЕ запрещен для пользователей, кроме владельца (точно так же, как captions.list НЕ запрещен), и поэтому я хотел бы использовать эти данные для моего веб-приложения.

Любая помощь с благодарностью получена.

Спасибо,

Нихилу

3

Решение

Я только что попробовал URL, который вы упомянули в браузере и в проводнике API, и в обоих случаях я получил 401, когда у меня не было токена oAuth, и 403, когда у меня был токен доступа (так как я не владелец), поэтому конечные точки действуют как задумано; в соответствии с документация, Для загрузки подписей требуется oAuth согласие владельца видео.

Возможно, если вместо этого вы получите 404, есть проблема в библиотеке PHP?

1

Другие решения

Я нашел другой способ получить доступ к данным подписи любого видео YouTube.
Код написан на Ruby.

Чтение транскрипта YouTube (подписи) из любого публичного видео Youtube

Прекрасно работает, мне просто нужно найти способ интегрировать это с моим веб-приложением.

1