Хотя я думаю, что BEST ответ - использовать базу данных для отслеживания ваших файлов для вас, я также считаю, что это невероятная боль в заднице. Я работал в Python с Boto3, и это решение я придумал.
Это не элегантно, но будет работать. Перечислите все файлы, а затем отфильтруйте их до списка файлов с "суффиксом" / "расширением", которые вы хотите в коде.
s3_client = boto3.client('s3')
bucket = 'my-bucket'
prefix = 'my-prefix/foo/bar'
paginator = s3_client.get_paginator('list_objects_v2')
response_iterator = paginator.paginate(Bucket=bucket, Prefix=prefix)
file_names = []
for response in response_iterator:
for object_data in response['Contents']:
key = object_data['Key']
if key.endswith('.json'):
file_names.append(key)
print file_names