Я пытаюсь проверить дату последней модификации листа Google, используя pygsheets 1.1.4, google-api-python-client 1.6.7< /em> и Python 3.6.3 в Windows 10.
Я могу аутентифицировать, просматривать и редактировать содержимое электронной таблицы, но когда я пытаюсь получить дату последнего изменения:
my_client = pygsheets.authorize(service_file=secret_service_acct_file)
my_worksheet = my_client.open_by_key(my_key)
last_updated = my_worksheet.updated
Вместо этого я получаю следующую ошибку:
Traceback (most recent call last):
File "<pyshell#77>", line 1, in <module>
my_worksheet.updated
File "C:\Program Files (x86)\Python36-32\lib\site-packages\pygsheets\spreadsheet.py", line 90, in updated
response = self.client._execute_request(self.id, request, False)
File "C:\Program Files (x86)\Python36-32\lib\site-packages\pygsheets\client.py", line 459, in _execute_request
response = request.execute()
File "C:\Program Files (x86)\Python36-32\lib\site-packages\googleapiclient\_helpers.py", line 130, in positional_wrapper
return wrapped(*args, **kwargs)
File "C:\Program Files (x86)\Python36-32\lib\site-packages\googleapiclient\http.py", line 840, in execute
raise HttpError(resp, content, uri=self.uri)
googleapiclient.errors.HttpError: <HttpError 404 when requesting https://www.googleapis.com/drive/v3/files/{API_KEY}?fields=modifiedTime&supportsTeamDrives=false&alt=json returned "File not found: {API_KEY}.">
Для меня это означает, что файл не найден. Я ожидаю, что другие операции чтения/записи потерпят неудачу, если возникнут проблемы с авторизацией или соединением. Вместо этого я попытался открыть электронную таблицу с помощью open_by_url()
, но получил те же результаты.
Я использую google-api-python-client v1.6.7 и pygsheets v1.1.4, недавно установленные с GitHub. Я пробовал работать в режиме «администратора» и запускать с no_cache=True
в соответствии с предложениями в других pygsheets вопросы типа этого один, безрезультатно.
Я использовал gspread 0.6.2, пока не понял, что в конечном итоге мне понадобится поддержка "Общего диска". gspread 3.0.0 утверждает, что предлагает поддержку "Общего диска", но также устарел атрибут .updated
, который мне нужен.
Как я могу получить последнюю версию modifiedTime
с помощью pygsheets, или мне следует вообще использовать другую библиотеку?
редактировать: я заметил, что pygsheets использует v3 Sheets API для атрибута, который я пытаюсь вызвать, и другой ответ SO описывает удаление «ориентированных на файлы» параметров между API листов v3 и API листов v4, но руководство по миграции от Google, похоже, не содержит подсказок для моего варианта использования.
my_worksheet.sheet1.update_value('A1',"test")
? Я не могу воспроизвести вашу ошибку. - person Nithin   schedule 17.05.2018