У меня есть некоторый код Python, который успешно аутентифицирует и извлекает различные объекты из API фотографий Google.
from googleapiclient.discovery import build
def build_service(credentials):
API_SERVICE_NAME = 'photoslibrary'
API_VERSION = 'v1'
return build(API_SERVICE_NAME, API_VERSION, credentials=credentials)
def get_albums(service):
results = service.albums().list().execute()
return results.get('albums', [])
def get_pictures(service,album_id: str):
body = {
"albumId": album_id,
"page_size": 10
}
print(body)
results = service.mediaItems().search(body=body).execute()
return results
def get_picture_url(service,media_item_id: str):
return service.mediaItems().get(mediaItemId=media_item_id)
Все функции работают, кроме get_picture_url, что приводит к следующему ответу.Работая через оболочку, я могу успешно составить список mediaItems с помощью метода list, но не могу получить к ним доступ, если использовать метод get ().
{
"error": {
"code": 401,
"message": "Request is missing required authentication credential. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.",
"status": "UNAUTHENTICATED"
}
}
Редактировать: мой объем установлен только для чтения.