使用python获取带前缀的s3文件

Gan*_*hai 5 python amazon-s3 amazon-web-services

我的 s3 文件名是“folder/filename.xml”。我想获取以“name.xml”结尾的文件

import boto3
s3 = boto3.resource('s3')
try:
fileobj = s3.Object('lcu-matillion',''folder/.*name.xml'').get()['Body']

data=fileobj.read()
except Exception:
  print('not found')    
Run Code Online (Sandbox Code Playgroud)

有谁帮忙提供一下准确的代码吗?谢谢

Joh*_*ein 9

不要忘记可能有多个文件与该通配符匹配。

你会使用类似的东西:

import boto3

s3 = boto3.resource('s3', region_name='ap-southeast-2')

bucket = s3.Bucket('my-bucket')

objects = bucket.objects.filter(Prefix='folder-name/')

for object in objects:
  if object.key.endswith('.txt'):
    object.download_file('/tmp/' + object.key)
Run Code Online (Sandbox Code Playgroud)