我正在尝试使用 Python Google Drive API 为文件构建远程路径。给定一个路径,比如 /folderA/FolderB/folderC/theFile.txt 我想在驱动器上创建文件夹 A,然后在其中创建文件夹 B,然后在 B 中创建文件夹 C,然后再将文件上传到文件夹 C。
我有一个短循环:
currentParent = pathStartID
for aFolder in pathArray:
thisFoldersID = self.createRemoteFolder(aFolder, parentID = currentParent)
currentParent = thisFoldersID
我首先在驱动器根目录中创建文件夹 A,文件夹 A 的 ID 是“pathStartID”。pathArray 包含文件夹 B 和文件夹 C 的名称。
createRemoteFolder()
看起来像这样:
def createRemoteFolder(self, folderName, parentID = None):
# Create a folder on Drive, returns the newely created folders ID
body = {
'title': folderName,
'mimeType': "application/vnd.google-apps.folder"
}
if parentID:
body['parentsCollection'] = [{'id': parentID}]
root_folder = driveFileMan.client.files().insert(body = body).execute()
return root_folder['id']
但由于某种原因,每个文件夹都是在 Google Drive 的根目录中创建的,而不是像我想要的那样在父文件夹中创建。
谁能发现我做错了什么?或者有没有更简单的方法来做到这一点?