我使用googledriveapi(v3)下载并显示用户驱动器中所有文件的元数据。最近我发现了一些用户的一个问题,其中一些文件没有通过list()
方法返回
所有文件的列表由以下(简化的)Python代码完成
result = self.get_service().files().list().execute()
file_list = result["files"]
while "nextPageToken" in result:
result = self.get_service().files().list(pageToken=result["nextPageToken"]).execute()
file_list = file_list + result["files"]
例如,一个用户有一个文件夹“H”,其中应该包含一定数量的文件,如stock Drive web app中所示。处理完这个列表之后,我确实找到了一个与“H”相对应的条目,但是它们的parents
数组中没有id为“H”的条目。
应用程序使用的权限范围是完全访问: “https://www.googleapis.com/auth/drive”
(我在这里和谷歌的产品论坛上也看到过一些类似的问题,但没有比2014年更近的问题了。)
我错过什么了吗?
编辑:请求包括垃圾文件-我们可以在其他结果中看到“垃圾=True”参数。我也知道这不是分页问题,nextPageToken
值总是在预期的时候出现,并且我看到file_list的输出长度超过了1000——最大页面大小
由于调用文件.list未在结果字段中请求NextPaGetToken。注:这可能是由python库完成的(我不喜欢库)。如果没有正确处理nextPageToken,您的结果将是不确定的。在
相关问题 更多 >
编程相关推荐