我想从我的Google云端硬盘下载。 文件夹结构非常复杂。以下是概述:
Parent Folder 1
--- Parent Folder 2
------ Parent Folder 3
--------- Parent Folder 4
------------ Parent Folder 5
--------------- Data
是否有任何脚本可以下载具有如下文件夹结构的文件:
Parent Folder 2
--- Parent Folder 3
------ Parent Folder 5
--------- Data
由于
答案 0 :(得分:0)
我过去做过这个,你需要做的是创建一个递归方法。首先获取google云端硬盘帐户中所有文件的列表。然后,如果文件有文件夹,则按名称对它们进行排序,然后创建该文件夹。然后查找该文件夹中的所有文件并列出它们。一旦找到了应该存在的正确目录,就可以在文件上执行一次下载。
这是我使用C#的例子。
public static void PrettyPrint(DriveService service, Google.Apis.Drive.v3.Data.FileList list, string indent)
{
foreach (var item in list.Files.OrderBy(a => a.Name))
{
Console.WriteLine(string.Format("{0}|-{1}", indent, item.Name));
if (item.MimeType == "application/vnd.google-apps.folder")
{
var ChildrenFiles = ListAll(service, new FilesListOptionalParms { Q = string.Format("('{0}' in parents)", item.Id), PageSize = 1000 });
PrettyPrint(service, ChildrenFiles, indent + " ");
}
}
}
关于如何在C#中执行此操作的完整教程可以在List all files
找到