Je tente de créer un chemin d'accès distant pour un fichier à l'aide de l'API Python Google Drive. Étant donné un chemin, dites /folderA/FolderB/folderC/theFile.txt Je veux créer le dossierA sur Drive puis le dossierB dans celui, puis le dossierC dans B, avant de télécharger le fichier dans le dossier C.Building Path - Google Drive SDK
J'ai une courte boucle:
currentParent = pathStartID
for aFolder in pathArray:
thisFoldersID = self.createRemoteFolder(aFolder, parentID = currentParent)
currentParent = thisFoldersID
Je crée d'abord dossierA dans la racine du lecteur, et l'ID de dossierA est « pathStartID ». PathArray contient les noms de dossierB et de dossierC.
createRemoteFolder()
ressemble à ceci:
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']
mais pour une raison quelconque chaque dossier est créé dans la racine de Google Drive, pas dans le dossier parent comme je veux.
Quelqu'un peut-il repérer ce que je fais mal? Ou y a-t-il un moyen plus facile de faire cela?
J'aurais dû repérer cela - les âges dépensés se gratter la tête en regardant ça! Super, merci pour l'aide, qui a fait l'affaire :) – Cian