Ich versuche, eine Datei in meinem S3-Bucket mit Python Boto3 umzubenennen, konnte ich die Argumente nicht klar verstehen. Kann mir hier jemand helfen?Boto3/S3: Umbenennen eines Objekts mit copy_object
Was ich plane ist, ein Objekt in ein neues Objekt zu kopieren und dann das eigentliche Objekt zu löschen.
Ich habe ähnliche Fragen hier gefunden, aber ich brauche eine Lösung mit Boto3.
Ich mag diese Lösung, danke. Ein Tipp, wenn jemand genauso stolpert wie ich. Beim ersten Lesen habe ich übersehen, dass der an CopySource * übergebene Schlüssel den Bucket-Namen * enthält. Die coole Sache ist, dass dies bedeutet, dass Sie zwischen Eimern kopieren können, aber ich wurde geworfen, weil ich gerade versuchte, einen Schlüssel innerhalb des gleichen Eimers zu ändern, und nicht dachte, um es voranzustellen. Als ich das tat, bekam ich Berechtigungsfehler statt eines vernünftigeren NoSuchBucket Fehlers. Das hat mich noch mehr verwirrt! Hoffentlich können die Leute jetzt diese Falle überspringen. – t1m0
Ich habe das Dictionary-Format für CopySource verwendet (das String-Format funktionierte nicht für mich): 'CopySource = 'string' oder {'Bucket': 'string', 'Key': 'string', 'VersionId': 'string '} 'basiert auf http://boto3.readthedocs.io/en/latest/reference/services/s3.html#S3.Client.copy_object – Kurtis