Получить данные из определённого листа Google Sheets
Таков код:
credentials = ServiceAccountCredentials.from_json_keyfile_name(
self.CREDENTIALS_FILE,
['https://www.googleapis.com/auth/spreadsheets',
'https://www.googleapis.com/auth/drive'])
httpAuth = credentials.authorize(httplib2.Http())
service = apiclient.discovery.build('sheets', 'v4', http=httpAuth)
request = service.spreadsheets().get(spreadsheetId=spreadsheet_id, ranges=ranges,
includeGridData=include_grid_data)
По умолчанию выводится лист 1 (Maket 1). Как получить доступ к другим листам, если spreadsheetId листов одинаковый, а различаются они лишь по gid в ссылке? Для первого листа соответственно значение 0. У других листов gid состоит из 9-10-значного числа
https://docs.google.com/spreadsheets/d/**spreadsheet_id**/edit#gid=**0*
Каким образом можно получить значения с другого листа?
Решение:
request = service.spreadsheets().get(spreadsheetId=spreadsheet_id, ranges=['Maket 2!C4'],
includeGridData=include_grid_data)
Просто параметр ranges надо указать в формате [имя листа!B2:D5]
Источник - https://habr.com/ru/post/483302/
Ответы (1 шт):
Автор решения: D. Violet
→ Ссылка
import gspread
from oauth2client.service_account import ServiceAccountCredentials
gscope = ['https://spreadsheets.google.com/feeds', 'https://www.googleapis.com/auth/drive']
gcredentials = 'test.json'
gdocument = 'test' # название таблицы
credentials = ServiceAccountCredentials.from_json_keyfile_name(gcredentials, gscope)
gc = gspread.authorize(credentials)
wks = gc.open(gdocument).worksheet('Тест') # название листа
val = wks.acell('B1').value
