APIv4 Google工作表按名称打开工作表

时间:2017-04-12 03:50:36

标签: python google-sheets google-drive-api

如何使用新的APIv4按名称而不是按ID打开工作表?似乎所有示例都有spreadsheetID=key,并且不知道如何按名称进行操作。我需要按名称打开工作表并获取ID。

基本上,我尝试做的是使用以下代码复制后再操作新工作表:

drive.auth.service.files().copy(fileId= g.tkey,body={"parents": [{"kind": "drive#fileLink","id": g.mfolder}], 'title': copy_name}).execute()

名称为copy_name的新工作表,如何获取该工作表的ID?

1 个答案:

答案 0 :(得分:1)

在Google表格API v4中,它无法直接从文件名中打开电子表格。 Sheet API v4的所有API都需要spreadsheetId才能使用工作表。但您可以使用文件名检索spreadsheetId。因此,您可以使用文件名检索spreadsheetId,从文件名中打开电子表格。

为了从文件名中检索spreadsheetId,它使用Drive API。 python脚本如下。 Drive API v3用于它。它可能会添加范围(https://www.googleapis.com/auth/drive.file)。

脚本:

res = service.files().list(q="trashed=false and name='" + copy_name + "'", fields="files(id)").execute()

结果:

{'files': [{'id': '#####'}]}

您可以将结果作为JSON进行检索。使用此ID,您可以使用电子表格。