Jam*_*iro 3 google-drive-api pydrive gsuite
我的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"中的每个文件.在查看文档并检查StackOverflow之后,我仍然无法弄清楚如何执行此操作.如何使用PyDrive下载文件夹"b"中的所有文件(包含在文件夹"a"中).此外,如果相关,请注意文件夹"b"包含数千个文件.
我想到了.基本上,您需要使用文件ID列出或下载文件夹的内容.
假设file_list是根目录:
for file1 in file_list:
if file1['title'] == '[name_of_target_folder]':
folder_id = file1['id']
Run Code Online (Sandbox Code Playgroud)
然后
> folder_id
> 'WIU1xyz19g83abcdefg'
Run Code Online (Sandbox Code Playgroud)
(例如)
获取'文件夹'中的每个文件:
file_list = drive.ListFile({'q': "'{}' in parents and trashed=false".format(folder_id)}).GetList()
Run Code Online (Sandbox Code Playgroud)
下载'文件夹'中的每个文件:
for file1 in sorted(file_list, key = lambda x: x['title']):
print('Downloading {} from GDrive ({}/{})'.format(file1['title'], i, len(file_list)))
file1.GetContentFile(file1['title'])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2506 次 |
| 最近记录: |