使用 PyDrive 下载特定文件夹中的所有文件
Downloading all of the files in a specific folder with PyDrive
我的 Google 驱动器看起来像这样:
picture1.jpg
song1.mp3
a/b/file1.txt
a/b/file2.txt
a/b/file3.jpg
a/b/file4.m4a
a/b/...
我想使用 PyDrive 下载文件夹“b”中的所有文件。查看文档并检查 Whosebug 后,我仍然无法弄清楚如何执行此操作。我如何使用 PyDrive 下载文件夹“b”(包含在文件夹“a”中)中的所有文件。此外,如果相关,请注意文件夹“b”包含数千个文件。
我明白了。基本上您需要使用文件 ID 来列出或下载文件夹的内容。
假设file_list为根目录:
for file1 in file_list:
if file1['title'] == '[name_of_target_folder]':
folder_id = file1['id']
然后
> folder_id
> 'WIU1xyz19g83abcdefg'
(例如)
获取 'folder' 中的每个文件:
file_list = drive.ListFile({'q': "'{}' in parents and trashed=false".format(folder_id)}).GetList()
下载'folder'中的每个文件:
for i, file1 in enumerate(sorted(file_list, key = lambda x: x['title']), start=1):
print('Downloading {} from GDrive ({}/{})'.format(file1['title'], i, len(file_list)))
file1.GetContentFile(file1['title'])
我的 Google 驱动器看起来像这样:
picture1.jpg
song1.mp3
a/b/file1.txt
a/b/file2.txt
a/b/file3.jpg
a/b/file4.m4a
a/b/...
我想使用 PyDrive 下载文件夹“b”中的所有文件。查看文档并检查 Whosebug 后,我仍然无法弄清楚如何执行此操作。我如何使用 PyDrive 下载文件夹“b”(包含在文件夹“a”中)中的所有文件。此外,如果相关,请注意文件夹“b”包含数千个文件。
我明白了。基本上您需要使用文件 ID 来列出或下载文件夹的内容。
假设file_list为根目录:
for file1 in file_list:
if file1['title'] == '[name_of_target_folder]':
folder_id = file1['id']
然后
> folder_id
> 'WIU1xyz19g83abcdefg'
(例如)
获取 'folder' 中的每个文件:
file_list = drive.ListFile({'q': "'{}' in parents and trashed=false".format(folder_id)}).GetList()
下载'folder'中的每个文件:
for i, file1 in enumerate(sorted(file_list, key = lambda x: x['title']), start=1):
print('Downloading {} from GDrive ({}/{})'.format(file1['title'], i, len(file_list)))
file1.GetContentFile(file1['title'])