2016-01-15 5 views
2

Документация boto3 рекомендует настраивать ключ из командной строки. Если в любом случае я могу поместить ключ AWS в исходный код python? Ниже приведен код для справки.boto3 Загрузка S3 с использованием ключа aws

If you have the AWS CLI, then you can use its interactive configure command to set up your credentials and default region: 
aws configure 
Follow the prompts and it will generate configuration files in the correct locations for you. 

import boto3 

s3 = boto3.resource('s3') 
bucket = s3.Bucket('my-bucket') 
for obj in bucket.objects.all(): 
    print(obj.key) 
+0

Не рекомендуется. Если ключ отменен, а новый ключ назначен и внесен в файл учетных данных. Соединение не будет выполнено из-за старого ключа. Возможно, вы можете добавить несколько профилей и назову определенный профиль. https://github.com/boto/boto3/issues/21 – mootmoot

ответ

9

См. «Параметры метода» in the official documentation;

from boto3.session import Session 

session = Session(aws_access_key_id='<YOUR ACCESS KEY ID>', 
        aws_secret_access_key='<YOUR SECRET KEY>', 
        region_name='<REGION NAME>') 
_s3 = session.resource("s3") 
_bucket = _s3.Bucket(<BUCKET NAME>) 
_bucket.download_file(Key=<KEY>, Filename=<FILENAME>) 
+0

поэтому я делаю my_s3 = session.resource ('s3'), чтобы получить свой объект s3? – user1187968

+0

Вот что говорит страница. – bmargulies

Смежные вопросы