【问题标题】:I want to extract only the Aws s3 bucket name and display it in the form of list我只想提取 Aws s3 存储桶名称并以列表的形式显示
【发布时间】:2022-01-09 16:35:38
【问题描述】:

您好,我正在使用 boto & boto3 库来读取 AWS s3 存储桶的名称。通过使用以下代码,我成功地使用我的访问密钥和秘密访问密钥访问了 aws s3 存储桶。

import boto
from boto.s3.key import Key
import boto.s3.connection
from __future__ import print_function

ACCESS_KEY_ID ='****'
SECRET_ACCESS_KEY ='****'

conn = boto.s3.connect_to_region('us-**',
                                 aws_access_key_id=ACCESS_KEY_ID, aws_secret_access_key=SECRET_ACCESS_KEY)
ls ={}
ls = conn.get_all_buckets()
print(ls)

它成功地将我帐户中的存储桶列表返回为

 Out[39]:  [<Bucket: aaaa>, <Bucket: bbbb>]

但是,我只想要如下列表中的存储桶名称

[aaaa,bbbb]

我怎样才能做到这一点?有什么方法可以根据列表获取存储桶名称?

【问题讨论】:

    标签: python python-3.x amazon-s3


    【解决方案1】:

    您当前正在返回Bucket 对象的列表。您只需要访问每个对象的 name 字段并构造名称列表。

    试试这个:

    conn = boto.s3.connect_to_region('us-**',
                                     aws_access_key_id=ACCESS_KEY_ID, aws_secret_access_key=SECRET_ACCESS_KEY)
    ls = list(map(lambda bucket: bucket.name, conn.get_all_buckets()))
    print(ls)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-20
      • 1970-01-01
      • 1970-01-01
      • 2020-07-16
      相关资源
      最近更新 更多