[英]Error while Downloading file to my local device from S3
我正在嘗試使用以下代碼將文件從Amazon S3存儲桶下載到我的本地設備,但出現錯誤消息“無法找到憑證”
下面給出的是我編寫的代碼:
import boto3
import botocore
BUCKET_NAME = 'my-bucket'
KEY = 'my_image_in_s3.jpg'
s3 = boto3.resource('s3')
try:
s3.Bucket(BUCKET_NAME).download_file(KEY, 'my_local_image.jpg')
except botocore.exceptions.ClientError as e:
if e.response['Error']['Code'] == "404":
print("The object does not exist.")
else:
raise
誰能幫助我。 提前致謝。
AWS通過這種方式將共享憑證系統用於AWS CLI和所有其他AWS開發工具包,不存在將AWS憑證泄漏到某些代碼存儲庫的風險,AWS安全實踐建議使用通常位於Linux上的共享憑證文件
~/.aws/credentials
該文件包含一個訪問密鑰和秘密密鑰,所有sdk和aws都會使用cli文件,該文件可以使用此命令手動或自動創建
aws configure
它將詢問幾個問題並為您創建憑據文件,請注意,在訪問AWS資源之前,您需要創建一個具有適當權限的用戶。
有關更多信息,請單擊下面的鏈接-:
您沒有使用創建的會話來下載文件,而是使用了創建的s3客戶端。 如果要使用客戶端,則需要指定憑據。
your_bucket.download_file('k.png', '/Users/username/Desktop/k.png')
要么
s3 = boto3.client('s3', aws_access_key_id=... , aws_secret_access_key=...)
s3.download_file('your_bucket','k.png','/Users/username/Desktop/k.png')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.