小编Maa*_*raa的帖子

通过将凭据作为参数传递,使用 boto3 从 S3 存储桶下载文件

根据 Boto3 官方文档,我们可以通过将凭据作为参数传递来连接 S3 存储桶。但我面临着问题。

工作场景:硬编码密钥 ID 和密钥

s3r = boto3.resource('s3', aws_access_key_id='XXXXXXXXXXXXXXXXXXXX',
    aws_secret_access_key='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX')
buck = s3r.Bucket('bucket name')
buck.download_file(filename,filename)
Run Code Online (Sandbox Code Playgroud)

非工作场景:作为参数传递

AccessKey = 'XXXXXXXXXXXXXXXXXXXX'
SecretKey = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
s3r = boto3.resource('s3', aws_access_key_id=AccessKey, aws_secret_access_key=SecretKey)
buck = s3r.Bucket('bucket name')
buck.download_file(filename,filename)
Run Code Online (Sandbox Code Playgroud)

对于非工作场景,我面临以下错误。

botocore.exceptions.ClientError: An error occurred (403) when calling the HeadObject operation: Forbidden
Run Code Online (Sandbox Code Playgroud)

python amazon-s3 python-3.x aws-sdk boto3

5
推荐指数
1
解决办法
6348
查看次数

标签 统计

amazon-s3 ×1

aws-sdk ×1

boto3 ×1

python ×1

python-3.x ×1