我的任务是重组我们公司的Dropbox。 我正在使用 Python 和 Dropbox API,我的目标是提取我们团队 Dropbox 的文件夹和子文件夹中所有文件的列表。
到目前为止,我的代码看起来是来自他们的基本代码,我想要一点帮助来理解如何列出每个子文件夹中的文件。
import dropbox
dbx = dropbox.Dropbox('API')
dbx.users_get_current_account()
for entry in dbx.files_list_folder('/Company Team Folder').entries:
print(entry.name)
感谢您对此的任何指导。
对于来这里寻找答案的人,这里是使用 Dropbox API 和 python 列出文件夹和子文件夹中所有文件的解决方案
def i_am_dropbox(token):
my_client = Dropbox(token)
file_list = my_client.files_list_folder('', recursive=True)
# WE DID NOT CHECK HASMORE!
folder_list = [x.name for x in file_list.entries if 'size' not in dir(x)]
# List of both folders and files...
list_of_files = [x.name for x in file_list.entries]
# print folder_list
return folder_list, list_of_files
当我制作个人项目时,我使用这种方法来分离文件夹和文件:
def list_files_in_folder(folder_path):
"""List all files and folders in a specified Dropbox folder."""
dbx = dropbox.Dropbox(ACCESS_TOKEN)
try:
# Get folder contents
response = dbx.files_list_folder(folder_path)
# Print out the names of the files
folders = []
files = []
for entry in response.entries:
if isinstance(entry, dropbox.files.FolderMetadata):
folders.append(entry)
elif isinstance(entry, dropbox.files.FileMetadata):
files.append(entry)
return folders, files
except dropbox.exceptions.ApiError as e:
print(f"Error: {e}")