#youtube #youtube-api #youtube-data-api
Вопрос:
Моя цель — найти все самые просматриваемые видеоролики YouTube с «Годо» в названии.
Используя только пользовательский интерфейс YouTube, я ищу «Godot» и в фильтрах выбираю «Тип — видео» и «Сортировать по количеству просмотров»: https://www.youtube.com/results ?search_query=godotamp;sp=CAMSAhAB
Он показывает мне список видео, но многие результаты поиска отсутствуют. Например, если вы посмотрите на популярный канал YouTube Godot, их самое популярное видео с «Godot» в названии появляется в результатах поиска, а второе по популярности — нет. В принципе, некоторые видео с этого канала появляются в списке, а другие нет (хотя у них очень высокое количество просмотров).
Когда я использую API Youtube и пытаюсь сделать то же самое, я получаю те же результаты.
Почему? Может кто-нибудь помочь мне найти способ получить все самые просматриваемые видео YouTube с «Годо» в названии?
Ответ №1:
Не забудьте при поиске заголовка, содержащего именно годо, добавить кавычки вокруг («), затем с помощью вашей измененной ссылки я получу оба указанных вами видео: https://www.youtube.com/results ?search_query=»годо»amp;sp=КАМСАхАБ
Однако в API YouTube метод кавычек не работает.
Мое решение:
Используйте следующий запрос CURL, который показывает в своем ответе оба упомянутых вами видео:
curl -s 'https://www.youtube.com/youtubei/v1/search?key=AIzaSyAO_FJ2SlqU8Q4STEHLGCilw_Y9_11qcW8' -H 'Content-Type: application/json' --data-raw '{"context":{"client":{"clientName":"WEB","clientVersion":"2.2022011"}},"query":""godot"","params":"CAM="}'
Примечание: не обращайте внимания на ключ, это не ключ YouTube Data API v3.