Использование gspread и oauth2client

Я пытался использовать oauth2client и gspread для работы с googlesheet, но проблема в том, что при использовании oauth2client требуется поле области видимости. Я понятия не имею, что такое масштаб. Ниже приведен код использования oauth2client.

import gspread
from oauth2client.service_account import ServiceAccountCredentials

scope = ['https://spreadsheets.google.com/feeds']

credentials = ServiceAccountCredentials.from_json_keyfile_name('gspread-april-2cd … ba4.json', scope)

gc = gspread.authorize(credentials)

wks = gc.open("Where is the money Lebowski?").sheet1

person Edccccch    schedule 12.07.2016    source источник
comment
Вы не можете открыть электронную таблицу? Или вам просто интересно, что такое масштаб?   -  person Burnash    schedule 17.07.2016
comment
@Burnash Я выяснил область действия, но затем я использовал open_with_url и напрямую скопировал URL-адрес моей электронной таблицы, и он показывает мне, что «таблица не найдена», когда я пробовал свой код. Электронная таблица, которую я создал, была из той же учетной записи, в которой я создал проект Google (или API, я забыл, как он назывался)   -  person Edccccch    schedule 18.07.2016
comment
Вы поделились таблицей с client_email в gspread-april-2cd...ba4.json?   -  person Burnash    schedule 18.07.2016
comment
Этот файл gspread-xxxx.json загружен, когда я создавал проект, верно? И client_email должен быть учетной записью Google, которую я создал для проекта?   -  person Edccccch    schedule 18.07.2016
comment
Лучше всего следовать инструкциям в gspread.readthedocs.io/en/latest/oauth2. .html   -  person Burnash    schedule 18.07.2016
comment
Да, gspread-xxxx.json — это файл, который вы загрузили при создании учетных данных. client_email — это параметр в этом файле, а не аккаунт Google.   -  person Burnash    schedule 18.07.2016
comment
Это замечательно! Наконец-то работает! Спасибо большое!   -  person Edccccch    schedule 18.07.2016


Ответы (1)


Области OAuth выражают разрешения, которые вы запрашиваете у пользователей для авторизации для вашего приложения.

Тот, который вы использовали, является единственной доступной областью для авторизации вашего запроса при использовании API Google Sheets v3. .

https://spreadsheets.google.com/feeds

Если вы использовали API Google Sheets v4, теперь вы можете использовать любой из этих две сферы:

https://www.googleapis.com/auth/spreadsheets.readonly

который разрешает доступ только для чтения к листам пользователя и их свойствам и

https://www.googleapis.com/auth/spreadsheets

который разрешает доступ для чтения/записи к листам пользователя и их свойствам.

person KENdi    schedule 14.07.2016