Download Objek S3 Kanthi Python lan Boto 3

Ing kiriman iki, kita nuduhake conto cara ndownload file lan gambar saka ember S3 aws nggunakake perpustakaan Python lan Boto 3.

Boto minangka SDK AWS kanggo Python. Nyedhiyakake fungsi sing gampang digunakake kanggo bisa sesambungan karo layanan AWS kayata ember EC2 lan S3.



Obyek Dowload S3 Kanthi Python lan Boto 3

Ing conto ing ngisor iki, kita ndownload siji file saka ember S3 sing ditemtokake.


Kaping pisanan kita kudu nggawe klien S3 nggunakake boto3.client(s3).

import boto3 BUCKET_NAME = 'my_s3_bucket' BUCKET_FILE_NAME = 'my_file.json' LOCAL_FILE_NAME = 'downloaded.json' def download_s3_file():
s3 = boto3.client('s3')
s3.download_file(BUCKET_NAME, BUCKET_FILE_NAME, LOCAL_FILE_NAME)

Sing download_file cara njupuk telung paramèter:


Parameter pertama yaiku jeneng ember ing S3. Sing nomer loro yaiku file (jeneng lan ekstensi) sing pengin didownload lan parameter sing nomer telu yaiku jeneng file sing pengin disimpen.



Download Kabeh Objek S3 ing Ember sing Ditetepake

Ing conto ing ngisor iki, kita ndownload kabeh obyek ing ember S3 sing ditemtokake.

Cuplikan kode nganggep file kasebut langsung ana ing root bucket lan ora ana ing sub-folder.

import boto3 def download_all_files():
#initiate s3 resource
s3 = boto3.resource('s3')
# select bucket
my_bucket = s3.Bucket('bucket_name')
# download file into current directory
for s3_object in my_bucket.objects.all():
filename = s3_object.key
my_bucket.download_file(s3_object.key, filename)


Download Kabeh Objek ing Ember S3 Sub-Folder

Kode ing ngisor iki nuduhake cara ndownload file sing ana ing sub-folder ing ember S3.


Upamane file kasebut ana ing ember lan lokasi ing ngisor iki:

BUCKET_NAME = 'images'

PATH = pets/cats/

import boto3 import os def download_all_objects_in_folder():
s3_resource = boto3.resource('s3')
my_bucket = s3_resource.Bucket('images')
objects = my_bucket.objects.filter(Prefix='pets/cats/')
for obj in objects:
path, filename = os.path.split(obj.key)
my_bucket.download_file(obj.key, filename)

Referensi

Dokumentasi Boto 3