更新google auth2后Gspread保持活力

时间:2016-04-22 06:15:50

标签: python google-spreadsheet-api gspread

有几个例子'保持与谷歌电子表格的连接活着' 但我发现的所有内容都基于“旧的”Google登录系统,该系统自2015年4月起不再适用

使用OAuth 2.0保持与googlespreadsheet连接的正确方法是什么

我试过这个

import gspread

from oauth2client.service_account import ServiceAccountCredentials

headers = gspread.httpsession.HTTPSession(headers={'Connection':'Keep-Alive'}) #Allows a persistant connection.
    scope = ['https://spreadsheets.google.com/feeds']
    credentials = ServiceAccountCredentials.from_json_keyfile_name('Apps Script Execution API.json', scope)
    c = gspread.authorize(auth=credentials,http_session=headers)

结果: c = gspread.authorize(auth = credentials,http_session = headers) TypeError:authorize()得到了一个意外的关键字参数'auth'

1 个答案:

答案 0 :(得分:2)

你问题的最后答案是:

import gspread
from gspread.httpsession import HTTPSession

from oauth2client.service_account import ServiceAccountCredentials

scope = ['https://spreadsheets.google.com/feeds']
key_name = 'something.json'
credentials = ServiceAccountCredentials.from_json_keyfile_name(key_name, scope)

#gc = gspread.authorize(credentials) doesn't have a http_session kwarg
http_session = HTTPSession(headers={'Connection':'Keep-Alive'})
gc = gspread.Client(credentials, http_session)
gc.login()
ss = gc.open("Sachibondu-MasonryVaults")