我需要找到具有特定前缀的所有文件。例如:
raw/client/Hist/2017/*/*/Tracking_*.zip
我试过这行代码,但它不起作用: import boto3
client = boto3.client("s3", aws_access_key_id=aws_access_key_id, aws_secret_access_key=aws_secret_access_key)
client.list_objects(Bucket="myBucket", Prefix="raw/client/Hist/2017/*/*/Tracking_*.zip")
最佳答案
如果不首先选择对象的超集,然后通过循环将其进一步减少到您需要的子集,您将无法使用 boto3 执行此操作。但是,您可以使用亚马逊的 data wrangler图书馆和 list_objects方法,支持通配符,返回您需要的 S3 key 列表:
import awswrangler as wr
objects = wr.s3.list_objects('s3://myBucket/raw/client/Hist/2017/*/*/Tracking_*.zip')
关于python - 如何使用 Python Boto3 根据带有通配符的前缀列出对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58591151/