我希望将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")
这是我运行脚本时遇到的错误:
错误图片
对此将提供任何帮助。
答案 0 :(得分:0)
建议不要使用凭证AWS Command-Line Interface (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')
(将区域设置为适合您的存储桶。)