Проблемы с API Youtube в отношении релевантности поиска.Python

Программы на Python
Anonymous
Проблемы с API Youtube в отношении релевантности поиска.

Сообщение Anonymous »

API Youtube не возвращает релевантные видео или даже близкие к лучшим результаты по большинству запросов, а вместо этого возвращает видео, которые либо нерелевантны с большим количеством просмотров, либо релевантны с числом просмотров менее 100.
Сейчас я использую следующий код:

Код: Выделить всё

youtube = build('youtube', 'v3', developerKey=google_api_key)

class VideoUrls:
def __init__(self, name, url):
self.name = name
self.url = url

def __str__(self):
return f"\nname of video: {self.name}\nurl: {self.url}"

def youtube_request(query, results):
request = youtube.search().list(
part="snippet",
type="video",
maxResults=results,
q=query,
order="relevance",
)
response = request.execute()

instances = {}
for i in range(results):
name = response['items'][i]['snippet']['title']
url = response['items'][i]['id']['videoId']
url = f"https://www.youtube.com/watch?v={url}"
instances[name] = VideoUrls(name, url)

return instances

videos = youtube_request("Cherry wine hozier", 5)
for video in videos.values():
print(video)
Это возвращает список видео, как и ожидалось, но эти видео не имеют отношения к запросу. Поиск некоторых песен вернет случайные популярные видео или, как в приведенном выше коде, вернет каверы на песню с менее чем 100 просмотрами. Как я могу исправить тот факт, что API YouTube не дает мне лучших результатов? Я тоже пробовал order="viewCount", но он просто меняет порядок одних и тех же видео по просмотрам вместо того, чтобы предоставлять новые видео с большим количеством просмотров.

Подробнее здесь: https://stackoverflow.com/questions/790 ... -relevance

Вернуться в «Python»