如何列出Google云端硬盘文件夹的所有文件,文件夹,子文件夹和子文件

时间:2013-02-07 14:48:37

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

如何在单个查询中查询所有子项和子项的子项?

更新

这似乎是一个简单的问题。我怀疑是否有一个简单的解决方案?

查询文件夹和文件树可能会耗费大量API调用。 因此,为了解决我的问题,我使用单个查询列出所有者的所有文件和文件夹。此查询还返回子文件和子文件夹。要在列表中查找文件夹及其所有子文件夹(文件夹,文件,子文件夹和子文件),我必须创建一个像索引一样的树。

结论

单个查询是不够的。您必须列出所有或缩小查询与所有者。下一步你必须将结果索引为(递归)找到文件夹的树。

像(Linux中的ls -R)这样的查询选项会很好。

2 个答案:

答案 0 :(得分:2)

我正在尝试在PHP中执行相同的操作。我的解决方案是:

  1. 从驱动器中检索文件和文件夹的完整列表
  2. 在检索到的json上进行双重迭代(嵌套):
    • 第一个覆盖“items”数组中的元素
    •     
    • 第二个(递归)每个元素的父ID,

在其父ID列表中拒绝所有不包含我特定文件夹ID的元素 别担心,这只是一个Google API调用。剩下的工作是本地的。

答案 1 :(得分:1)

我认为你的“更新”中有正确的想法。将Drive视为平面,调用列出所有内容,然后从中生成自己的树。