使用gspread如何获取谷歌表格中最新添加或更新的工作表?
用gspread获取最新添加/更新的谷歌工作表
嘿,刚好我对gspread这块挺熟的,来给你一步步解决问题~
获取最新添加的工作表
gspread本身没有直接提供“获取最新工作表”的API,但我们可以借助工作表的创建时间属性来实现。每个工作表的properties字段里都包含了createdTime(创建时间),我们可以通过排序来筛选出最新的那个:
示例代码
import gspread # 你的授权代码(你已经掌握这部分啦) gc = gspread.authorize(credentials) sh = gc.open("你的谷歌表格名称") # 获取当前表格下的所有工作表 all_worksheets = sh.worksheets() # 按创建时间倒序排序,取第一个就是最新添加的工作表 latest_added = sorted( all_worksheets, key=lambda ws: ws.properties['createdTime'], reverse=True )[0] # 验证一下,打印最新工作表的名称 print(f"最新添加的工作表:{latest_added.title}")
获取最新更新的工作表
如果你的需求是找到最近被编辑过的工作表,逻辑和上面类似,只需要把排序依据换成updatedTime(更新时间)就行:
示例代码
# 同样基于上面的all_worksheets列表 latest_updated = sorted( all_worksheets, key=lambda ws: ws.properties['updatedTime'], reverse=True )[0] print(f"最新更新的工作表:{latest_updated.title}")
小提示
- 工作表的
createdTime和updatedTime都是ISO 8601格式的字符串,直接用sorted就能正确比较时间先后,不用额外转成datetime对象(当然转了也没问题,更严谨)。 - 如果你需要频繁获取最新工作表,可以把这段逻辑封装成一个小函数,方便复用。
内容的提问来源于stack exchange,提问作者Gokul Nath
相关产品推荐
相关产品推荐

