Пакет Youtube-Search NPM дает странные результаты - PullRequest
1 голос
/ 02 апреля 2019

Я использую библиотеку NPM youtube-serach с экспрессом, чтобы найти первое видео на 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);
  });
});

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

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

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

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

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

1 Ответ

1 голос
/ 02 апреля 2019

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

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

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

...