Формирование URL-адреса API для возврата только videoId. (И используйте минимальную квоту)
Поэтому я использую Home Assistant для запуска автоматизации, которая извлекает новейший идентификатор видео, который был загружен каналом, так что я могу использовать мой дом Google, чтобы воспроизвести его (на Roku TV), работает отлично, я работаю над созданием автоматизации, которая также выполняет запрос GET, но сейчас я использую датчик покоя домашнего помощника, который обновляется путем выполнения GET через заданное количество секунд, по какой-то причине, хотя в минуту опрашивается только 3 датчика, или, кажется, они используют около 100-500 квоты (превышая мою квоту в 10000 через несколько часов или меньше), я не уверен, что это проблема домашнего помощника или я не правильно использую API (мне нужен только videoId), плохая ссылка моя URL ниже:
https://www.googleapis.com/youtube/v3/search?key=API_KEY&part=id&order=date&maxResults=1
Ожидаемое использование квоты 1-3 на GET, получение 100+ квоты на GET.
1 ответ
Запрос конечной точки поиска обходится дороже, чем запрос конечной точки PlaylistItems для загружаемого плейлиста данного пользователя. В зависимости от моделей использования квоты по умолчанию могут накладывать довольно жесткие ограничения на количество вызовов, которые пользователь может совершать в различных конечных точках API.
Адаптируя мой ответ на другой вопрос, я предлагаю вам вместо этого сделать следующее: вызвать конечную точку PlaylistItems, передав ей в качестве параметра playlistId идентификатор плейлиста загружаемого канала данного канала.
Идентификатор списка загрузок данного канала получается после запроса собственной конечной точки канала. Необходимый идентификатор можно найти на .items.contentDetails.relatedPlaylists.uploads
, Обычно идентификатор канала и соответствующий ему идентификатор списка воспроизведения для загрузки связаны с s/^UC([0-9a-zA-Z_-]{22})$/UU\1/
,
Обратите внимание, что вы должны запрашивать конечную точку каналов только один раз, а затем использовать возвращенный идентификатор списка загрузок столько раз, сколько вам нужно.
Также обратите внимание, что вы можете поэкспериментировать с использованием параметра fields, примененного к вашим запросам, чтобы получить только из частичных ресурсов API. Тем не менее, я предсказываю, что (я вполне могу ошибаться, поскольку не проверял это) стоимость 3 балла за запрос PlaylistItems для его contentDetails
объект не может быть улучшен.