gpt4 book ai didi

python - 谷歌表格 Python API : how get values in first sheet if don't know range?

转载 作者:行者123 更新时间:2023-12-04 14:22:51 25 4
gpt4 key购买 nike

Python API for Google sheets有一个 get 方法来从电子表格中获取值,但它需要一个 range 参数。也就是说,您的代码必须是这样的,

sheets_service = service.spreadsheets().values()
data = sheets_service.get(spreadsheetId = _GS_ID, range = _SHEET_NAME).execute()

并且您不能省略 range 参数,'' 的值或 'Sheet1' 的值也不会起作用或类似(除非有一个名为 Sheet1 的工作表)。

如果我事先不知道工作表名称怎么办?我可以以某种方式引用第一张或最左边的工作表吗?如果做不到这一点,有没有办法获得所有工作表的列表?我一直在查看 API,但没有找到任何用于该目的的东西,但这似乎是一个基本需求,我觉得我遗漏了一些明显的东西。

最佳答案

您可以使用 Sheets API 的 spreadsheets.get 检索电子表格的值和元数据。通过fields参数,可以获取电子表格的各种信息。

示例 1:

此示例在电子表格中检索索引、工作表 ID 和工作表名称。在这种情况下,index: 0 表示第一个工作表。

service.spreadsheets().get(spreadsheetId=_GS_ID, fields='sheets(properties(index,sheetId,title))').execute()

示例 2:

此示例使用工作表索引检索工作表名称、数据范围的最后一行和最后一列的编号。当工作表索引为0时,表示第一个工作表。

res = service.spreadsheets().get(spreadsheetId=_GS_ID, fields='sheets(data/rowData/values/userEnteredValue,properties(index,sheetId,title))').execute()
sheetIndex = 0
sheetName = res['sheets'][sheetIndex]['properties']['title']
lastRow = len(res['sheets'][sheetIndex]['data'][0]['rowData'])
lastColumn = max([len(e['values']) for e in res['sheets'][sheetIndex]['data'][0]['rowData'] if e])

引用:

关于python - 谷歌表格 Python API : how get values in first sheet if don't know range?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51851389/

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