web-dev-qa-db-ja.com

Boto3を使用してS3からフォルダーをダウンロードする

_Boto3 Python SDK_を使用して、bucket.download_file()メソッドを使用してファイルをダウンロードすることができました

フォルダ全体をダウンロードする方法はありますか?

13
El Fadel Anas

boto3を使用すると、aws認証情報を設定し、S3からデータセットをダウンロードできます

import boto3
import os 

# set aws credentials 
s3r = boto3.resource('s3', aws_access_key_id='xxxxxxxxxxxxxxxxx',
    aws_secret_access_key='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx')
bucket = s3r.Bucket('bucket_name')

# downloading folder 
prefix = 'dirname'
for object in bucket.objects.filter(Prefix = 'dirname'):
    if object.key == prefix:
        os.makedirs(os.path.dirname(object.key), exist_ok=True)
        continue;
    bucket.download_file(object.key, object.key)

Ur access_keysecret_access_keyが見つからない場合は、こちらをご覧ください page
お役に立てば幸いです。
ありがとうございました。

0
Soulduck