2016-04-29 5 views
1

Я новичок в python. Я просто пытался создать рабочий лист Google, используя gspread. Я читал об использовании google api's от here. Я загрузил учетные данные из Google Developers Console, который является файлом в формате json. Затем я использовал этот кодсоздание рабочего листа с использованием gspread

import gspread 
from oauth2client.service_account import ServiceAccountCredentials 
scope = ['https://spreadsheets.google.com/feeds'] 
credentials =  ServiceAccountCredentials.from_json_keyfile_name('spreadsheet1995.json', scope) 
gc = gspread.authorize(credentials) 
worksheet = gc.add_worksheet(title="A worksheet", rows="100", cols="20") 

Но выдает ошибку 'Client' object has no attribute 'add_worksheet' хотя я прочитал документацию, которая включила этот атрибут. Вот link, за которым я последовал. Пожалуйста, помогите мне разобраться с этой проблемой.

ответ

0

необходимо сначала создать таблицу, а затем создать рабочий лист. Я не думаю, что gspread позволяет создавать электронную таблицу. вы можете попробовать pygsheets, который очень похож на gspread.

2

Во-первых, вы должны знать, чтобы разница между таблицы и лист. Электронная таблица представляет собой контейнер рабочих листов. Как книга со многими страницами.

Если вы перейдете в Google Таблицы и нажмите большую кнопку «+», вы запустите новую новую таблицу . Эта таблица сначала будет содержать один лист с именем «Sheet1». Вы можете добавить больше таблиц в таблицу.

Теперь вернемся к gspread и вашему образцу кода.

Чтобы создать рабочий лист, вам нужна электронная таблица. Это то, чего вам не хватает в коде.

Пропустив часть аутентификации, код должен выглядеть следующим образом:

gc = gspread.authorize(credentials) 
spreadsheet = gc.open("The name of your spreadsheet") 
worksheet = gc.add_worksheet(title="A worksheet", rows="100", cols="20") 

Теперь worksheet вы можете прочитать значение ячеек, редактировать их и т.д.

Смежные вопросы