Download-Datei von AWS S3 mit Python
Ich versuche, eine Datei zum herunterladen von der Amazon S3-bucket auf meinem lokalen unter den unten angegebenen code, aber ich bekomme die Fehlermeldung "Unable to locate Anmeldeinformationen"
Da unten ist der code, den ich geschrieben habe:
from boto3.session import Session
import boto3
ACCESS_KEY = 'ABC'
SECRET_KEY = 'XYZ'
session = Session(aws_access_key_id=ACCESS_KEY,
aws_secret_access_key=SECRET_KEY)
s3 = session.resource('s3')
your_bucket = s3.Bucket('bucket_name')
for s3_file in your_bucket.objects.all():
print(s3_file.key) # prints the contents of bucket
s3 = boto3.client ('s3')
s3.download_file('your_bucket','k.png','/Users/username/Desktop/k.png')
Könnte mir jemand helfen auf diese. Danke.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden Sie nicht die Sitzung, die Sie geschaffen, um die Datei herunterzuladen, die Sie verwenden der s3-client, den Sie erstellt haben. Wenn Sie wollen, um den client verwenden, müssen Sie die Anmeldeinformationen angeben.
oder
Für die anderen, die versuchen das herunterladen von Dateien von AWS-S3 auf der Suche nach einer benutzerfreundlichen Lösung mit anderen Industrie-Stärke-Funktionen, check-out https://github.com/d6t/d6tpipe. Es abstrahiert die S3-Funktionen in eine einfachere Schnittstelle. Es unterstützt auch directory synchronisieren, hochladen von Dateien, Berechtigungen und viele andere Dinge, die Sie brauchen, um Dateien zu synchronisieren von S3 (und ftp).