Одна из причин, по которой это может происходить, заключается в том, что вы изначально авторизовали своего пользователя для доступа только для чтения. Если вы прошли через процесс авторизации с областью .readonly, ваш токен на предъявителя отражает эту авторизацию (и токен сохраняется в вашем файле учетных данных). Если вы измените область действия, но не получите новый токен авторизации, вы получите эту ошибку при попытке загрузки. Просто переделайте поток авторизации с новой определенной областью:
SCOPES = 'https://www.googleapis.com/auth/photoslibrary'
store = file.Storage('path_to_store')
if not creds or creds.invalid:
flow = client.flow_from_clientsecrets('google_credentials.json', SCOPES)
creds = tools.run_flow(flow, store)
, и ваш магазин будет заполнен новым токеном, который можно использовать для загрузки.