Как загрузить данные из AWS в python - PullRequest
0 голосов
/ 18 января 2020

Я новичок в AWS и Бото. Данные, которые я хочу загрузить, находятся на AWS, и у меня есть ключ доступа и секретный ключ. Моя проблема в том, что я не понимаю подходы, которые я нашел. Например, этот код:

import boto
import boto.s3.connection
def download_data_connect_s3(access_key, secret_key, region, bucket_name, key, local_path):
    conn = boto.connect_s3(aws_access_key_id = access_key,\
        aws_secret_access_key = secret_key,\
        host='s3-{}.amazonaws.com'.format(region),\
        calling_format = boto.s3.connection.OrdinaryCallingFormat()\
        )

    bucket = conn.get_bucket(bucket_name)
    key = bucket.get_key(key)
    key.get_contents_to_filename(local_path)
    print('Downloaded File {} to {}'.format(key, local_path))

region = 'us-west-1'
access_key = # the key here
secret_key = # the secret key here
bucket_name = 'temp_name'
key = '<folder…/filename>' unique identifer
local_path = # local path

download_data_connect_s3(access_key, secret_key, region, bucket_name, key, local_path)

Что я не понимаю, так это 'key' 'bucket_name' и 'local path'. Что такое 'key' по сравнению с ключом доступа и секретным ключом? Мне не дали 'key'. Кроме того, 'bucket_name' является именем корзины в AWS (мне не было предоставлено имя корзины); а по локальному пути каталог, куда я хочу сохранить данные?

Ответы [ 2 ]

0 голосов
/ 18 января 2020

Похоже, что данные хранятся в Amazon S3.

Вы можете использовать AWS Интерфейс командной строки (CLI) для доступа к Amazon S3.

Чтобы просмотреть список сегментов в этой учетной записи:

aws s3 ls

Чтобы просмотреть содержимое сегмента:

aws s3 ls bucket-name

Чтобы скопировать файл из корзины в текущий каталог:

aws s3 cp s3://bucket-name/filename.txt .

или син c целая папка:

aws s3 sync s3://bucket-name/folder/ local-folder/
0 голосов
/ 18 января 2020

Вы правы.

bucket_name = имя вашего сегмента S3

key = это ключ объекта. Это полный путь к файлу в ведре. (например: у вас есть файл с именем a.txt в папке x, поэтому key = x/a.txt. См. эту ссылку

local_path = там, где вы хотите сохранить данные на локальном компьютере

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...