2017-02-23 52 views
2

Я использовал gspread для создания таблицы.Список электронных таблиц google, созданных с помощью gspread

Поскольку они созданы с помощью ключевой учетной записи google services, я не знаю, как я могу получить к ним доступ.

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

https://github.com/burnash/gspread

+0

Вы можете использовать 'OpenAll()' для этого: HTTP: //gspread.readthedocs. -й/о/последняя/# gspread.Client.openall – Burnash

ответ

2

Наконец нашел ответ.

Посмотрев прямо в коде gspread, я нашел это: https://github.com/burnash/gspread/blob/addd4940bf7e4f87aae598920facae2155e555b6/gspread/client.py#L151

Так это работает:

from oauth2client.service_account import ServiceAccountCredentials 
import gspread 
from gspread.ns import _ns 

# If modifying these scopes, delete your previously saved credentials 
# at ~/.credentials/sheets.googleapis.com-python-quickstart.json 
SCOPES = ['https://spreadsheets.google.com/feeds', 
      'https://www.googleapis.com/auth/drive'] 
CLIENT_SECRET_FILE = 'client_secret.json' 
APPLICATION_NAME = 'Google Sheets API Python' 


def get_credentials(): 
    """Gets valid user credentials from storage. 

    If nothing has been stored, or if the stored credentials are invalid, 
    the OAuth2 flow is completed to obtain the new credentials. 

    Returns: 
     Credentials, the obtained credential. 
    """ 

    return ServiceAccountCredentials.from_json_keyfile_name(CLIENT_SECRET_FILE, SCOPES) 

credentials = get_credentials() 
gc = gspread.authorize(credentials) 
feed = gc.get_spreadsheets_feed() 

for elem in feed.findall(_ns('entry')): 
    elem_title = elem.find(_ns('title')).text 
    print(elem_title) 
Смежные вопросы