2012-05-01 8 views
0

ディレクトリ構造を構築するために簡単な再帰的なリストを作成するにはどうすればよいですか?再帰コレクションのリストを使用してディレクトリ構造を構築するにはどうすればよいですか?

私はgdataのpythonクライアントライブラリを使用しています。 client.pyとdata.pyを見ると、ディレクトリ構造をリストして構築する直接的な方法はありません。私がやっている何

は次のとおりです。(self.clientが認証されていると仮定すると)、すべてのリソースチェックresource.in_collectionsについては

  1. self.client.GetAllResources(真showfoldersを=含める)
  2. ()

上記よりも良い方法がありますか?

おかげ

+0

現在、gdrive-cliプロジェクトでこれをやっているのは、ファイルのメタデータをローカルのsqliteデータベースに保存することです。 http://github.com/tom-dignan/gdrive-cli –

+0

ありがとうございます。私はあなたのコードを見ましたが、コレクション/フォルダをどこで扱っているか分かりません。あなたはgdrive-cliでそれらをサポートしていますか? –

+0

コレクションはまだ実装されていません。 –

答えて

2

別の方法は、最初のフォルダのみの階層をスキャンすることで、フォルダごとに、すべてのリソースを一覧表示します。あなたはGetAllResourcesメソッドに任意のURIを渡すことができ、この場合には、それは次のようになります。唯一のルートにフォルダの

  1. :ID 123456とフォルダの内容については

    https://docs.google.com/feeds/default/private/full/folder%3Aroot/contents/-/folder

  2. https://docs.google.com/feeds/default/private/full/folder%3A123456/contents/

デフォルトでは、フォルダ自体はコンテンツフィードには表示されないため、これらの2つを組み合わせて階層全体を取得することができます。

フラットリストを取得してフォルダ階層を生成するには上記の方法をお勧めします。

関連する問題