Google 表格错误 400“超出网格限制”

问题描述 投票:0回答:2

我现在正在尝试使用 Chrome 获取工作表的 JSON 正文,但要合并到 python 脚本中。

https://sheets.googleapis.com/v4/spreadsheets/[spreadsheet_id]/values/[tab_name]?alt=json&key=[api_key]

该工作表包含 56 行和 6 列,但我收到错误:

{
  "error": {
    "code": 400,
    "message": "Range ('tab_name'!TAB_NAME) exceeds grid limits. Max rows: 994, max columns: 26",
    "status": "INVALID_ARGUMENT"
  }
}

我以为它不再喜欢 alt=json 了,但我得到了同样的错误,只是最后的键。

google-sheets-api
2个回答
0
投票

没有定义适当的范围

我假设您正在尝试从工作表中获取值,根据 documentation 使用此端点的正确方法是

GET https://sheets.googleapis.com/v4/spreadsheets/{spreadsheetId}/values/{range}
您将 [tab_name] 定义为 URL 的一部分,等于
SheetName
sheetName!A:Z 
,换句话说,错误表明您的请求超出了网格限制,因此您必须定义一个较小的网格,例如
GET https://sheets.googleapis.com/v4/spreadsheets/{spreadsheetId}/values/Sheet1!A1:C5

作为建议,我鼓励您查看文档中的示例。


0
投票

https://sheets.googleapis.com/v4/spreadsheets/[spreadsheet_id]/values/[tab_name]?alt=json&key=[api_key]

我最近遇到了同样的问题,如果您收到如下错误:

exceeds grid limits. Max rows: XXX, max columns: YYY

那么问题可能出在你的代表方式上

[tab_name]

pygsheets 库中报告了类似的问题。 修复是用单引号引用选项卡名称,如下所示:

https://sheets.googleapis.com/v4/spreadsheets/[spreadsheet_id]/values/'[tab_name]'?alt=json&key=[api_key]


原因是有时选项卡名称可以被解释为一个范围。 gsheets 可能会将类似

APP1

 的内容视为试图引用列 
APP
、行 
1
,而不是名为 
APP1
 的选项卡。

在选项卡名称周围添加单引号可确保 google API 将其解释为选项卡名称,而不是单元格地址或范围。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.