如何使用 Python Boto3 根据带有通配符的前缀列出对象?

Eri*_*let 5 python boto3

我需要找到具有特定前缀的所有文件。例如:

raw/client/Hist/2017/*/*/Tracking_*.zip
Run Code Online (Sandbox Code Playgroud)

我试过这行代码,但它不起作用:

raw/client/Hist/2017/*/*/Tracking_*.zip
Run Code Online (Sandbox Code Playgroud)

gbe*_*ven 7

如果不首先选择对象的超集,然后通过循环将其进一步减少到您需要的子集,您将无法使用 boto3 执行此操作。但是,您可以使用 Amazon 的data wrangler库和支持通配符的list_objects方法来返回您需要的 S3 键列表:

import awswrangler as wr
objects = wr.s3.list_objects('s3://myBucket/raw/client/Hist/2017/*/*/Tracking_*.zip')
Run Code Online (Sandbox Code Playgroud)