API YouTube IFrame: получить описание видео - PullRequest
2 голосов
/ 28 апреля 2019

Мне нужно получить описание видео (не заголовок) непосредственно из браузера пользователя, и единственное законное, что API предоставляет, это вызвать player.getVideoData(), но оно не содержит его.

Я пытался использовать недокументированный вызов https://www.youtube.com/get_video_info?video_id={video_id}, но он заблокирован CORS.

Также я нашел вызов API v3 videos / list , который выглядит как https://www.googleapis.com/youtube/v3/videos?key=YOUR_API_KEY&part=snippet&id=VIDEO_ID

Но, как я понял, он предназначен для вызовов с сервера на сервер, и я не хочу помещать здесь свой ключ API.

Из того, что я гуглил, похоже, что раньше player.getVideoData() вернул description, но теперь он кажется сломанным.

Так есть ли способ получить описание прямо из браузера?

1 Ответ

0 голосов
/ 24 июня 2019

Вы можете попробовать прочитать описание, используя document.querySelector - например:

document.querySelector("#description > yt-formatted-string").innerText

N.B. Это querySelector сработало для меня, даже если веб-сайт YouTube имеет в своем параметре URL disable_polymer=1 1 или нет.

или

document.querySelector("#eow-description").innerText

N.B: последний querySelector работал у меня со старым дизайном. Я рекомендую использовать первый вариант, но на всякий случай имейте это querySelector.


1 добавить disable_polymer=1 в URL в качестве параметра для загрузки дизайна YouTube old .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...