После 2 дней чтения gspread docs, gspread сообщений в блогах и следующих за большинством recent docs for using gspread Мне еще не удалось открыть ни одну таблицу Google. Я установил учетную запись службы API GDrive. Похоже, что мои учетные данные OAuth2 работают, но я все равно получаю постоянные ошибки «SpreadsheetNotFound».Как отлаживать постоянные ошибки «SpreadsheetNotFound» с использованием python gspread
Мой код выглядит примерно так и работает без сообщений об ошибках, пока он не пытается открыть таблицу Google:
import gspread
from oauth2client.service_account import ServiceAccountCredentials
scope = ['https://spreadsheets.google.com/feeds']
jsonfile = '/path/Python-data-GSpreadsheets-dbbc-99.json'
credentials = ServiceAccountCredentials.from_json_keyfile_name(jsonfile,scope)
# get authorized to access data
gc = gspread.authorize(credentials)
# gc returns with no error messages, so far OK
wks = gc.open('SSTEst123').sheet1 #fails here
#throws SpreadsheetNotFound error
Да, я добавил свой GMAIL адрес электронной почты, уполномочено редактировать (пробовал с и без), так как учетная запись службы должна иметь доступ ко всем моим данным в любом случае, и я оставляю за собой свою таблицу.
Что еще я могу попытаться выяснить, почему это не удается? Любые идеи о том, как отлаживать, почему он не может открыть таблицу?
ОК, вот как я его решил. Чтобы поделиться моими таблицами с адресом электронной почты службы Google Диска API (например, [email protected]) - (Думал, что это был мой «настоящий» идентификатор Gmail/электронная почта, но это не было)
для отладки фида ... Добавлено несколько печатей() линия в gspread источника client.py, чтобы увидеть, если я получал что-нибудь в корме, и проверьте значения из фида. Заметил, что я получал значение, старое значение (из предыдущего скрипта?)
Завершите работу и перезагрузите ноутбук iPython, и теперь он работает.
Не могли бы вы немного рассказать о том, как вы думаете, что у вас есть эта работа и что вы смогли узнать из заявлений на печать? У меня такая же проблема, как вы описали выше. Мне не показалось, что мое приложение GDrive имеет доступ к «моим» документам google. – Robert
Nevermind! Сработало! Используя ту же самую документацию, о которой вы упоминали: http://gspread.readthedocs.org/en/latest/oauth2.html#using-signed-credentials – Robert
Также мне пришлось делиться моими таблицами с адресом электронной почты службы Google Диска API (например, [email protected]) – BigDoug