遍历所有行 Smartsheet API Python
Iterate through all rows Smartsheet API Python
我正在尝试遍历 sheet 中的所有行,但似乎仅使用 .rows 仅限于返回 100 个项目。
for temp_row in inventory.rows:
x += 1
print x #X will always return <= 100
不管我里面有多少物品。
我做错了什么?
编辑:澄清一下,我试图对每一行做一些事情,而不是计算它们,这只是我注意到它只抓取 100 行的一个例子。
听起来 SDK 在执行 Get Sheet 操作时可能正在使用 paging -- 即,它只返回响应中结果的第一页,默认为 100 行。如 API docs 中所述,页面大小在 Get Sheet 响应中默认为 100 行,除非请求另有说明。 (在文档中,请参阅 pageSize 和 page 参数的说明。)
我建议您查看 SDK,了解在调用 pageSize and/or page =16=]获取Sheet操作。
默认情况下,get_sheet 将 return 一个包含 100 行的页面。包括标志:includeAll=true
到 return 所有行。
有关详细信息,请参阅 documentation on paging。
重要的是要注意,当直接向 Smartsheet API 发出请求而不是通过 Python SDK 时,默认响应是包括 sheet 而无需包含 page
或 pageSize
参数。
include_all
参数不是 get_sheet()
的一部分。
PythonSDK 2.0中的参数为page_size
并且默认为 100
。
my_sheet = smartsheet.Sheets.get_sheet(sheet_id, page_size=5000)
其中 sheet_id
是您 sheet 的 ID。
如果您已经有了 sheet 对象,您可以使用
my_sheet.total_row_count
获取行数并使用它代替 5000
。
我正在尝试遍历 sheet 中的所有行,但似乎仅使用 .rows 仅限于返回 100 个项目。
for temp_row in inventory.rows:
x += 1
print x #X will always return <= 100
不管我里面有多少物品。
我做错了什么?
编辑:澄清一下,我试图对每一行做一些事情,而不是计算它们,这只是我注意到它只抓取 100 行的一个例子。
听起来 SDK 在执行 Get Sheet 操作时可能正在使用 paging -- 即,它只返回响应中结果的第一页,默认为 100 行。如 API docs 中所述,页面大小在 Get Sheet 响应中默认为 100 行,除非请求另有说明。 (在文档中,请参阅 pageSize 和 page 参数的说明。)
我建议您查看 SDK,了解在调用 pageSize and/or page =16=]获取Sheet操作。
默认情况下,get_sheet 将 return 一个包含 100 行的页面。包括标志:includeAll=true
到 return 所有行。
有关详细信息,请参阅 documentation on paging。
重要的是要注意,当直接向 Smartsheet API 发出请求而不是通过 Python SDK 时,默认响应是包括 sheet 而无需包含 page
或 pageSize
参数。
include_all
参数不是 get_sheet()
的一部分。
PythonSDK 2.0中的参数为page_size
并且默认为 100
。
my_sheet = smartsheet.Sheets.get_sheet(sheet_id, page_size=5000)
其中 sheet_id
是您 sheet 的 ID。
如果您已经有了 sheet 对象,您可以使用
my_sheet.total_row_count
获取行数并使用它代替 5000
。