如何使用Google Spreadsheets API获取电子表格的创建日期与时间
解决方案
Google Sheets API 本身不返回文件级的创建时间属性,该类元数据需要通过Google Drive API获取,电子表格的spreadsheetId和其在Drive中对应的文件ID完全一致,可以直接复用。
操作步骤
- 第一步:在Google Cloud项目中启用Google Drive API,同时在你的认证授权作用域中添加Drive元数据只读权限:
https://www.googleapis.com/auth/drive.metadata.readonly,该权限仅可读取文件元数据,不会获取你的文件内容,权限范围更安全。 - 第二步:初始化Google Drive API的服务实例,认证逻辑和你之前调用Sheets API的逻辑完全通用,无需额外修改认证流程,只要确保已添加上述权限即可。
- 第三步:调用Drive API的
files.get接口获取创建时间,示例代码如下:
from googleapiclient.discovery import build # 此处credentials为你之前调用Sheets API时已生成的认证凭证,直接复用即可 drive_service = build('drive', 'v3', credentials=credentials) # 直接传入和spreadsheetId相同的文件ID,指定返回createdTime字段 file_meta = drive_service.files().get( fileId=sheet_id, fields="createdTime" ).execute() # 取值为ISO 8601格式的时间字符串,可按需转换为对应时区的时间对象 create_time = file_meta.get('createdTime')
补充说明
- 如果你需要同时获取其他文件级属性,比如最后修改时间、文件所有者、共享状态等,可以在
fields参数中添加对应字段,多个字段用英文逗号分隔,例如fields="createdTime,modifiedTime,ownedByMe"即可同时返回创建时间、修改时间和是否为本人所有的标识。
内容的提问来源于stack exchange,提问作者juju
相关产品推荐
相关产品推荐

