gpt4 book ai didi

python - oauth googlesheet python共享失败

转载 作者:太空宇宙 更新时间:2023-11-03 14:40:32 24 4
gpt4 key购买 nike

我有以下代码:

from oauth2client.service_account import ServiceAccountCredentials
from googleapiclient import discovery
from httplib2 import Http

SCOPES = ['https://www.googleapis.com/auth/spreadsheets', 'https://www.googleapis.com/auth/drive']

credentials = ServiceAccountCredentials.from_json_keyfile_name('credentials.json', scopes=SCOPES)
http_auth = credentials.authorize(Http())

service = discovery.build('sheets', 'v4', credentials=(credentials))

spreadsheet_body = {
'properties': {'title': 'Test Sheet'},
"sheets": [
{
"data": [
{
"startRow": 0,
"startColumn": 0,
"rowData": [
{
"values": [
{
"userEnteredValue": {
"stringValue": "foo"
},
},
{
"userEnteredValue": {
"stringValue": "bar"
},
},
],
},
{
"values": [
{
"userEnteredValue": {
"stringValue": "row2"
},
},
{
"userEnteredValue": {
"stringValue": "row2, col2"
},
},
{
"userEnteredValue": {
"formulaValue": "=HYPERLINK(\"https://www.foo.com\")"
},
},
],
},
],
}
],
}
],
}

request = service.spreadsheets().create(body=spreadsheet_body)
response = request.execute()

print response

这有效,并且工作表是使用 URL 创建的,但是,当我尝试打开该 URL 时,我得到:

google auth error

我的帐户拥有服务帐户的所有权限,因此,我不认为这是服务帐户设置问题,但是,我可能是错的。

最佳答案

虽然我没有找到直接解决此问题的方法,但我确实通过 gspread 库找到了解决方法:

gc = gspread.authorize(credentials)
sht = gc.open_by_key(response['spreadsheetId'])
sht.share('edmunds.com', perm_type='domain', role='writer')

关于python - oauth googlesheet python共享失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46580562/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com