gpt4 book ai didi

python - 在 Python 的 google spreadsheet api v4 中获取工作表列表和最新工作表

转载 作者:太空狗 更新时间:2023-10-29 17:09:23 25 4
gpt4 key购买 nike

我正在尝试在 google official documentation 之后在 python 3 中读取和写入不同工作表的值.尽管我能够使用下面提到的代码块中 rangeName = 'Class Data!A2:E' 中的范围属性从某些工作表中读取值:

discoveryUrl = ('https://sheets.googleapis.com/$discovery/rest?'
'version=v4')
service = discovery.build('sheets', 'v4', http=http,
discoveryServiceUrl=discoveryUrl)

spreadsheetId = '1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms'
rangeName = 'Class Data!A2:E'
result = service.spreadsheets().values().get(
spreadsheetId=spreadsheetId, range=rangeName).execute()
values = result.get('values', [])

我正在尝试使用 sample code from here 写入值:

requests.append({
'updateCells': {
'start': {'sheetId': 0, 'rowIndex': 0, 'columnIndex': 0},
'rows': [
{
'values': [
{
'userEnteredValue': {'numberValue': 1},
'userEnteredFormat': {'backgroundColor': {'red': 1}}
}, {
'userEnteredValue': {'numberValue': 2},
'userEnteredFormat': {'backgroundColor': {'blue': 1}}
}, {
'userEnteredValue': {'numberValue': 3},
'userEnteredFormat': {'backgroundColor': {'green': 1}}
}
]
}
],
'fields': 'userEnteredValue,userEnteredFormat.backgroundColor'
}
})
batchUpdateRequest = {'requests': requests}

service.spreadsheets().batchUpdate(spreadsheetId=spreadsheet_id,
body=batchUpdateRequest).execute()

我面临的问题是我无法从官方文档中保留最新的工作表名称或 ID,因为最新的 api 修订版正在生成随机 gid(我们可能不知道工作表 gid 是什么)。有什么方法可以使用 google sheet api v4 引用工作表列表或电子表格最新修订的工作表名称或 ID?

最佳答案

您可以使用电子表格上的“get”方法获取工作表列表:

sheet_metadata = service.spreadsheets().get(spreadsheetId=spreadsheet_id).execute()
sheets = sheet_metadata.get('sheets', '')
title = sheets[0].get("properties", {}).get("title", "Sheet1")
sheet_id = sheets[0].get("properties", {}).get("sheetId", 0)

关于python - 在 Python 的 google spreadsheet api v4 中获取工作表列表和最新工作表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38245714/

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