J'essaie de renommer un fichier dans mon s3 s3 en utilisant python boto3, je ne pouvais pas comprendre clairement les arguments. Quelqu'un peut-il m'aider ici?Boto3/S3: renommer un objet en utilisant copy_object
Ce que je prévois est de copier l'objet à un nouvel objet, puis supprimer l'objet réel.
J'ai trouvé des questions similaires ici, mais j'ai besoin d'une solution en utilisant boto3.
J'aime cette solution, merci. Un conseil si quelqu'un a le même trébuche que moi. En première lecture, j'ai manqué que la clé transmise à CopySource * inclut le nom du compartiment *. Ce qui est génial, c'est que cela signifie que vous pouvez copier entre des compartiments, mais j'ai été jeté parce que j'essayais juste de changer une clé dans le même compartiment, et je n'ai pas pensé à le faire précéder. Quand je l'ai fait, je recevais des erreurs de permissions au lieu d'une erreur NoSuchBucket plus sensée. Cela m'a embrouillé encore plus! J'espère que les gens peuvent sauter cet écueil maintenant. – t1m0
J'ai utilisé le format de dictionnaire pour CopySource (le format de chaîne ne fonctionnait pas pour moi): 'CopySource = 'chaîne' ou {'Bucket': 'chaîne', 'Clé': 'chaîne', 'VersionId': 'chaîne '} 'basé sur http://boto3.readthedocs.io/en/latest/reference/services/s3.html#S3.Client.copy_object – Kurtis