使用boto3从特定AWS mediastore容器下载对象

时间:2018-01-04 23:50:25

标签: boto3 mediastore

我不明白在使用boto3从mediastore获取数据时如何指定容器。我一直在尝试使用boto3.client("mediastore-data"),但在docs中,它明确指定为

  

请勿在此路径中包含容器名称。

那么什么时候指定容器?除非我endpointPrefix botocore/data/mediastore-data/2017-09-01/service-2.jsondata.mediastore更新为<MY_CONTAINER_DATA_ENDPOINT>.data.mediastore

,否则以下代码无法正常连接
mediastore_data_client = boto3.client(
        "mediastore-data",
        region_name=<MY_REGION_NAME>,
        aws_access_key_id=<MY_AWS_ACCESS_KEY_ID>,
        aws_secret_access_key=<MY_AWS_SECRET_ACCESS_KEY>)

obj = mediastore_data_client.get_object(Path=<MY_PATH>)

2 个答案:

答案 0 :(得分:0)

我也遇到了一些困难,因为文档只描述了构造函数的一部分参数。 以下是我的工作:

client = boto3.client(service_name='mediastore-data', region_name='eu-west-1',endpoint_url='https://xxxxxxx.data.mediastore.eu-west-1.amazonaws.com')

response = client2.list_items(Path='mediastorepath')

print response

client.put_object(Body="localpath", Path='mediastorepath')

用您的参数替换localpath,mediastorepath和xxx。 希望这会有所帮助

答案 1 :(得分:0)

端点URL定义了您尝试获取的容器。每个容器都有一个唯一的URL端点。