Я использую API данных YouTube v3 для поиска на YouTube и анализа результатов.Даже если в ответе указано 4241 результат:
resp["pageInfo"]
{'totalResults': 4241, 'resultsPerPage': 50}
Я получаю только несколько видео (в данном случае 49).
Ниже приведен мой код для получения всех видео из API поиска.:
def search_youtube(keyword):
base_video_url = 'https://www.youtube.com/watch?v='
base_search_url = 'https://www.googleapis.com/youtube/v3/search?'
# See full sample for function
first_url = base_search_url+'key={}&q={}&part=snippet,id&order=date&maxResults=50'.format(API_KEY, keyword)
video_links = []
url = first_url
while True:
print(len(video_links))
inp = requests.get(url)
resp = json.loads(inp.text)
for i in resp['items']:
if i['id']['kind'] == "youtube#video":
video_links.append(base_video_url + i['id']['videoId'])
try:
next_page_token = resp['nextPageToken']
url = first_url + '&pageToken={}'.format(next_page_token)
except:
break
return video_links
all_videos = search_youtube("ural altay")
Я не могу собрать все видео из этого.В чем может быть причина?