从请求者下载文件在Amazon S3中收费

时间:2018-10-24 17:36:50

标签: python amazon-web-services amazon-s3

我需要从API下载一些重播文件,这些文件已存储在Amazon s3存储桶中,并且启用了请求者付款。

问题是,我设置了我的亚马逊AWS账户,创建了AWSAccessKeyIdAWSSecretKey,但是我仍然无法下载单个文件,因为我得到了{{ 1}}响应。

我想在Python脚本中自动执行所有操作,因此我一直在尝试使用Access denied软件包。另外,我安装了Amazon AWS CLI,并设置了访问ID和密钥。

我一直试图下载的文件(我想下载多个文件,但现在我只尝试下载一个)是:http://hotsapi.s3-website-eu-west-1.amazonaws.com/18e8b4df-6dad-e1f5-bfc7-48899e6e6a16.StormReplay

根据到目前为止我在SO上发现的内容,我已经尝试过类似的事情:

boto3

这:

import boto3
import botocore

BUCKET_NAME = 'hotsapi' # replace with your bucket name
KEY = '18e8b4df-6dad-e1f5-bfc7-48899e6e6a16.StormReplay' # replace with your object key

s3 = boto3.resource('s3')

try:
    s3.Bucket(BUCKET_NAME).download_file(KEY, 'test.StormReplay')
except botocore.exceptions.ClientError as e:
    if e.response['Error']['Code'] == "404":
        print("The object does not exist.")
    else:
        raise

但是我仍然无法下载文件。

欢迎任何帮助!谢谢!

0 个答案:

没有答案