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

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

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

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

Ошибка вызова 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) Запрещено

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

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

Спасибо,

Нихилу

2 ответа

Решение

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

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

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

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

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

Другие вопросы по тегам