簡體   English   中英

無法使用Python將文件傳輸到S3存儲桶

[英]Unable to transfer file to S3 bucket with Python

我正在尋找將png圖像傳輸到我在AWS上使用Python和boto3的S3存儲桶,不幸的是,當我在命令提示符下運行腳本時出現錯誤。

下面是我與boto3一起使用的Python腳本:

import boto3
from botocore.client import Config

ACCESS_KEY_ID = 'myAccessKey'
ACCESS_SECRET_KEY = 'mySecurityKey'
BUCKET_NAME = 'myBucketName'

data = open('C:/Python27/Scripts/test.png','rb')

s3 = boto3.resource(
    's3',
    aws_access_key_id=ACCESS_KEY_ID,
    aws_secret_access_key=ACCESS_SECRET_KEY,
    config=Config(signature_version='s3v4')
)
s3.Bucket(BUCKET_NAME).put_object(Key='test.png', Body=data)

print ("Done")

這是我運行腳本時遇到的錯誤:

錯誤的圖像

錯誤的圖像

任何有關這方面的幫助將非常感激。

建議您使用AWS命令行界面(CLI) aws configure命令,而不是將憑據放入源代碼中,該命令會將憑據存儲在配置文件中。

然后,您只需上傳一個包含以下代碼的文件:

import boto3

s3 = boto3.client('s3', region_name='ap-southeast-2')

s3.upload_file('C:/Python27/Scripts/test.png', 'my-bucket', 'test.png')

(根據您的水桶設置適合的區域。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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