Python - загрузка данных из определенной папки / подпапки AWS S3 - PullRequest
0 голосов
/ 30 апреля 2018

Я пытаюсь извлечь данные из AWS S3. Код ниже помогает мне скачать файл. Однако, если в корзине несколько папок, приведенный ниже код пытается извлечь всю корзину, а не определенную папку / подпапку. Как я могу изменить приведенный ниже код, чтобы извлечь только определенный файл в папке / подпапке

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)

your_bucket.download_file('rawdata.xlsx' ,/Users/user/Desktop/folder/')

Спасибо.

1 Ответ

0 голосов
/ 30 апреля 2018

Чтобы загрузить определенные файлы, вы должны создать список файлов для загрузки. затем вы можете проверить соответствие файла и загрузить его.

files_to_downloaded = ["folder1/key.png", "folder2/other.png", "folderRandom/Randomkey.png"]
for fileObject in bucket.objects.all():
    file_name = str(fileObject.key)
    if file_name in files_to_downloaded:
        bucket.download_file(file_name, 'destination_path')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...