YouTube операторы поиска в вызове API? логический оператор И, ИЛИ И НЕ - PullRequest
0 голосов
/ 08 марта 2019

Мне трудно понять, как работает оператор и функция для исследования с API YouTube.

На Youtube.Search я нашел метод setQ, который объясняет логику для оператора NOT и OR, но не для оператора AND. Основная идея состоит в том, чтобы сделать поиск, который содержит ровно оба параметра, иначе я могу использовать логику ИЛИ.

Пример: я хочу, чтобы 2 "рыба" и "море" были частью метаданных исследования.

Я сделал анализ внешнего вызова, и он имеет такую ​​форму: рыба + море, но если я пытаюсь реализовать его в Java, похоже, что он не работает правильно, потому что у меня есть другие результаты. PS: я упорядочил все свои результаты по релевантности (установив порядок со значением "релевантность" в качестве логики, которую использует сама YouTube) По этой причине я хотел получить такой же результат на веб-сайте YouTube и в моем локальном приложении.

1 Ответ

1 голос
/ 08 марта 2019

Я протестировал некоторые запросы с помощью Google Data API Explorer и обнаружил, что слово " AND " (заглавные буквы) принесет вам слегка отличающиеся результаты.:

Например, следующий запрос относится к поисковым видео по запросу «Кольцо» (без двойных кавычек) - он принесет 10 лучших результатов поиска из региона США:

https://www.googleapis.com/youtube/v3/search?part=snippet&maxResults=10&q=The+ring&regionCode=US&type=video&fields=items(id(channelId%2Ckind%2CvideoId)%2Csnippet(channelTitle%2Ctitle))%2CnextPageToken%2CpageInfo%2CprevPageToken%2CregionCode%2CtokenPagination&key={YOUR_API_KEY}

Вот результаты:

{
 "nextPageToken": "CAoQAA",
 "regionCode": "US",
 "pageInfo": {
  "totalResults": 1000000,
  "resultsPerPage": 10
 },
 "items": [
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "PFsl1cGHzp4"
   },
   "snippet": {
    "title": "The Ring (1/8) Movie CLIP - You Will Die in Seven Days (2002) HD",
    "channelTitle": "Movieclips"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "lbO9LhD9PsI"
   },
   "snippet": {
    "title": "The Ring- final scene!",
    "channelTitle": "prochys09"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "5bXpMRkwm_8"
   },
   "snippet": {
    "title": "SML Movie: The Ring",
    "channelTitle": "SuperMarioLogan"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "V3iJqH9-tQ8"
   },
   "snippet": {
    "title": "Everything Wrong With The Ring In 14 Minutes Or Less",
    "channelTitle": "CinemaSins"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "lm9AoNNWiPc"
   },
   "snippet": {
    "title": "The Ring Evolution in Movies & TV. (Sadako & Samara)",
    "channelTitle": "Darwin's Media"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "hpb2-ZOzc_o"
   },
   "snippet": {
    "title": "Samara Comes to You - The Ring (8/8) Movie CLIP (2002) HD",
    "channelTitle": "Movieclips"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "Baw98nsMvxU"
   },
   "snippet": {
    "title": "scary movie 3 brenda vs the ring lol",
    "channelTitle": "maltbydude"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "6YP1xg8G1o4"
   },
   "snippet": {
    "title": "RINGS behind the scenes",
    "channelTitle": "teu davidz"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "rroMPRc4flw"
   },
   "snippet": {
    "title": "The Ring Two (8/8) Movie CLIP - I'm Not Your Mommy (2005) HD",
    "channelTitle": "Movieclips"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "WcuRPzB4RNc"
   },
   "snippet": {
    "title": "Rings (2017) - TV Store Prank",
    "channelTitle": "Paramount Pictures"
   }
  }
 ]
}

Вот демо предыдущего запроса.

Выполнение теста с этими модификациями:

  • Двойная кавычка условий поиска - (т.е. "the", "ring") .
  • Добавление оператора " AND " (без двойных кавычек) .

Теперь я могу протестировать измененную версию предыдущего запроса:

https://www.googleapis.com/youtube/v3/search?part=snippet&maxResults=10&q=%22The%22+AND+%22ring%22&regionCode=US&type=video&fields=items(id(channelId%2Ckind%2CvideoId)%2Csnippet(channelTitle%2Ctitle))%2CnextPageToken%2CpageInfo%2CprevPageToken%2CregionCode%2CtokenPagination&key={YOUR_API_KEY}

И ее результаты:

{
 "nextPageToken": "CAoQAA",
 "regionCode": "US",
 "pageInfo": {
  "totalResults": 1000000,
  "resultsPerPage": 10
 },
 "items": [
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "PFsl1cGHzp4"
   },
   "snippet": {
    "title": "The Ring (1/8) Movie CLIP - You Will Die in Seven Days (2002) HD",
    "channelTitle": "Movieclips"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "5bXpMRkwm_8"
   },
   "snippet": {
    "title": "SML Movie: The Ring",
    "channelTitle": "SuperMarioLogan"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "lbO9LhD9PsI"
   },
   "snippet": {
    "title": "The Ring- final scene!",
    "channelTitle": "prochys09"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "V3iJqH9-tQ8"
   },
   "snippet": {
    "title": "Everything Wrong With The Ring In 14 Minutes Or Less",
    "channelTitle": "CinemaSins"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "hpb2-ZOzc_o"
   },
   "snippet": {
    "title": "Samara Comes to You - The Ring (8/8) Movie CLIP (2002) HD",
    "channelTitle": "Movieclips"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "rroMPRc4flw"
   },
   "snippet": {
    "title": "The Ring Two (8/8) Movie CLIP - I'm Not Your Mommy (2005) HD",
    "channelTitle": "Movieclips"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "lm9AoNNWiPc"
   },
   "snippet": {
    "title": "The Ring Evolution in Movies & TV. (Sadako & Samara)",
    "channelTitle": "Darwin's Media"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "kcRWyLMVrFM"
   },
   "snippet": {
    "title": "Cardi B - Ring (feat. Kehlani) [Official Video]",
    "channelTitle": "Cardi B"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "uukQ_6szDm8"
   },
   "snippet": {
    "title": "Rings | Trailer #1 | Paramount Pictures International",
    "channelTitle": "Paramount Pictures International"
   }
  },
  {
   "id": {
    "kind": "youtube#video",
    "videoId": "3SZu3_HGoWk"
   },
   "snippet": {
    "title": "Samara Sings A Song (The Ring Scary Halloween Parody)",
    "channelTitle": "Aaron Fraser-Nash"
   }
  }
 ]
}

Вот демоверсия предыдущего запроса.

Если вы сравните два результата, вы увидите, что (используя AND оператор) не содержит этих результатов поиска:

Примечание: я выделил условия поиска:

  • страшный фильм 3 Бренда против кольцо смеется
  • RING S позади * сцены
  • Ring s (2017) - TV StoreШалость

Вместо этого новые результаты:

  • Карди B - Кольцо (feat.Келани) [Официальное видео]
  • Самара поет песню ( Кольцо Страшная пародия на Хэллоуин)
  • Кольцо с |Трейлер № 1 |Paramount Pictures International

Я думаю, что в конце концов нет большого различия в результатах.

...