2

我试图找出如何检索上传至谷歌云端硬盘中的文件的文件大小获取文件的大小。根据docs这应该在文件元数据中...但是当我请求它时,文件大小根本不在元数据中。从谷歌云端硬盘API(蟒蛇)

file = self.drive_service.files().get(fileId=file_id).execute() 
print(file) 

>>> {u'mimeType': u'application/x-zip', u'kind': u'drive#file', u'id': u'0B3JGbAfem1CrWnhtWq5qYlkzSXf', u'name': u'myfile.ipa'} 

我在这里错过了什么?我如何检查文件大小?

回答

3

每默认情况下,只有一些特定的属性包含在元数据中。

请求特定的属性,使用fields参数:

file = self.drive_service.files().get(fileId=file_id, fields='size,modifiedTime').execute() 

这将查询文件的大小和修改时间。

顺便说一句,你发布的链接是指老版API。您可以在当前v3 API here中找到所有文件属性的列表。

+2

注意:您也可以添加fields ='*'来返回所有内容。 – DaImTo

+0

请注意,即使fields ='*'等字段中的某些字段也未填充Google文档或快捷文件。大小,md5Checksum等。 –

2

您在这里缺少“场”的特殊查询参数。它用于为Google apis提供部分响应。部分响应主要用于提高api通话性能。

有一个在新推出的V3的API略有变化,文件列表的API响应给一些默认属性的响应,与在V2的API,这给在默认情况下,响应的所有属性。

尽管如此,如果你想在响应所有的属性,通过“字段= *”作为查询。

希望,这有助于!

相关问题