Ответ:
Вы можете использовать API Google Фото в скрипте приложений для получения отдельных URL-адресов фотографий общего альбома.
Дополнительная информация:
UrlFetchApp.fetch()
возвращает объект HTTPResponse
в скрипте приложений, который содержит заголовки, HTML содержимое и другую информацию, такую как код ответа HTTP, как если бы страница выбиралась и загружалась через браузер. На странице «Квоты для служб Google» также есть набор ограничений для получения URL-адресов, в результате чего вы получаете усеченный ответ для достаточно больших страниц.
Однако в API фотографий есть методы, специально разработанные для описываемой вами цели, и эти данные можно получить из ресурса mediaItems
REST. Имейте в виду, однако, что это возвращает все фотографии, а не те, которые находятся в определенном c альбоме; оттуда потребуется дальнейшая обработка.
Пример кода:
После создания нового проекта в консоли Developers Console необходимо включить API Photos из Элемент меню APIs & Services > Library
, а затем свяжите его с вашим проектом скриптов приложений, перейдя в пользовательский интерфейс скрипта и следуя Resources > Cloud Platform project
. Добавьте номер проекта только что созданного в консоли разработчика и нажмите Set Project
.
Вот небольшой фрагмент кода, который вернет фотографии из вашей учетной записи Google Фото и зарегистрирует отдельные URL-адреса фотографий в Logger. :
function logPhotoUrls() {
var url = 'https://photoslibrary.googleapis.com/v1/mediaItems';
var options = {
headers: {
Authorization: 'Bearer ' + ScriptApp.getOAuthToken()
},
method: 'get',
muteHtteExceptions: false
};
var response = UrlFetchApp.fetch(url, options);
for (var i = 0; i < 10; i++) {
Logger.log(JSON.parse(response.getContentText()).mediaItems[i].productUrl);
}
}
Вам также необходимо отредактировать appscript.json
, который можно увидеть, следуя View > Show manifest file
, чтобы включить следующее:
{
"oauthScopes": ["https://www.googleapis.com/auth/photoslibrary.readonly",
"https://www.googleapis.com/auth/script.external_request"]
}
Я надеюсь, что это полезно для you!
Ссылки: