【发布时间】:2019-08-23 00:44:05
【问题描述】:
我在使用 Google Drive API 获取文件列表时尝试查找文件的路径。
现在,我可以获取文件属性(目前只获取校验和、id、名称和 mimeType):
results = globalShares.service.files().list(pageSize=1000,corpora='user',fields='nextPageToken, files(md5Checksum, id, name, mimeType)').execute()
items = results.get('files',[])
nextPageToken = results.get('nextPageToken',False)
for file in items:
print("===========================================================")
pp.pprint(file)
print(str(len(items)))
print(nextPageToken)
List documentation(提供给 list() 方法的参数)
Files documentation(每个文件返回的属性)
【问题讨论】:
-
我可以问你你想要的“文件的路径”吗?是否要检索父文件夹 ID?
-
感谢您的回复。是的。当
parents添加到fields时,返回文件的父文件夹ID。在您的情况下,您想要检索文件的文件夹树。我的理解正确吗? -
感谢您的回复。我提出了一个示例脚本作为答案。你能确认一下吗?如果我误解了您的问题并且这不是您想要的结果,我深表歉意。
-
尽量停止考虑文件路径。 Google Drive 是一个平面文件系统,其中“父”只是一个属性,有点像一个标签。一个文件可以有多个父级,因此可以位于多个路径上。
-
@Tanaike 请取消删除您的答案。这是一个很好的答案,将对 OP 有很大帮助。我建议您应该稍微编辑答案以解释
parent[0]仅在有一个单亲时才有效。如果他有多个路径,OP 可以扩展你的脚本来迭代父母。
标签: python google-api google-drive-api google-api-python-client