簡體   English   中英

從S3將文件下載到本地設備時出錯

[英]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資源之前,您需要創建一個具有適當權限的用戶。

有關更多信息,請單擊下面的鏈接-:

AWS CLI配置

您沒有使用創建的會話來下載文件,而是使用了創建的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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM