最新消息:因从typecho切换到wordpress, 由于转换导入问题,文章可能存在部分乱码或者排版问题,逐个排查修复中...

写写代码:取AWS S3 Bucket里面”一级目录”名

写写代码 admin 1607浏览 0评论

AWS S3 早期的API是没办法直接取的,只能取到一些object 列表,你需要从返回的object列表再提取所谓一级目录名。
但是估计是考虑到这种需求比较多吧,于是在list_object_v2 的新版本接口时,终于可以方便的提取到一级目录名了!

Python 代码供参考

s3 = boto3.client(
        's3',
        aws_access_key_id='Your-Access-Key-Id',
        aws_secret_access_key='Your-Access-Key',
        #(optional) aws_session_token=SESSION_TOKEN, 
    ) 
    
    folders_list=s3.list_objects_v2(Bucket='my-bucket',Delimiter='/')['CommonPrefixes']    
    
    root_folders = [ item['Prefix'].replace('/','') for item in folders_list ]

ref: http://boto3.readthedocs.io/en/latest/reference/services/s3.html#S3.Client.list_objects_v2

转载请注明:Linc Hu » 写写代码:取AWS S3 Bucket里面”一级目录”名

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址