Youtube-Поисковый пакет NPM дает странные результаты

#javascript #node.js #search #npm #youtube-data-api

#javascript #node.js #Поиск #npm #youtube-data-api

Вопрос:

Я использую библиотеку NPM YouTube-serach с Express, чтобы найти первое видео YouTube с названием песни.

 app.get("/search", (req, res) => {
  var search = require("youtube-search");

  var SONG = req.query.SONG;

  var opts = {
    maxResults: 10,
    key: "[REDACTED]"
  };

  search(SONG, opts, function(err, results) {
    if (err) return console.log(err);

    res.json(results);
  });
});
  

Когда я устанавливаю песню на «DJ Turn It Up», первым результатом при поиске в строке поиска YouTube является видео YouTube «Yellow Claw — DJ Turn It Up [Официальный полный поток]» от Mad Decent.

Когда я использую youtube-search для поиска «DJ Turn It Up», ни один из 10 результатов не является безумно приличным видео, и первый результат на самом деле является сценой из Riverdale с песней в нем, с 1/33 просмотров !?!

Это происходит и с другими треками, которые я ищу.

Я не понимаю! Я пробовал другие пакеты NPM, такие как ytsearch, но тоже безуспешно!

Есть ли способ точно настроить это или лучшая альтернатива?!

Ответ №1:

введите описание изображения здесьВы можете использовать REST API https://www.googleapis.com/youtube/v3/search и передайте некоторый параметр в вызов API.

Параметрами являются q — который определяет имя исполнителя или название альбома, key — ключ генерируется путем использования Google Project этого ключа, а последним параметром является part — параметр part в запросе указывает, какие части ресурса должны быть включены в ответ. Чтобы узнать подробности, такие как дата публикации, идентификатор канала и т.д., Вы можете передать фрагмент в свой параметр part.

Для получения более подробной информации посетите —https://developers.google.com/youtube/v3/sample_requests

Комментарии:

1. Используя эту ссылку » googleapis.com/youtube/v3 /… «, мои результаты все еще не показали наилучшего результата… Как я могу просто искать верхний результат, это не имеет смысла ..

2. @TransmissionsDev Как вы можете видеть выше на изображении, песня «DJ Turn It Up» выдает первый результат как «Yellow Claw — DJ Turn It Up [Официальный полный поток]» в соответствии с вашими требованиями.

3. Я не знаю, что сказать, за исключением того, что для меня результаты просто совершенно разные и не содержат официального потока … i.imgur.com/kzh0qZk.png Может ли это быть мой ключ API?