python - 如何使用 Python Boto3 列出和读取 S3 存储桶的特定文件夹中的每个文件
问题描述
我在 s3 存储桶的特定文件夹中有一些文件。所有文件名都采用相同的模式,如下所示:
s3://example_bucket/products/product1/rawmat-2343274absdfj7827d.csv
s3://example_bucket/products/product1/rawmat-7997werewr666ee.csv
s3://example_bucket/products/product1/rawmat-8qwer897hhw776w3.csv
s3://example_bucket/products/product1/rawmat-2364875349873uy68848732.csv
....
....
在这里,我想我们可以说:
bucket_name = 'example_bucket'
prefix = 'products/product1/'
key = 'rawmat-*.csv'
我需要阅读它们中的每一个。我非常不喜欢列出存储桶中的对象。
最有效的方法是什么?
解决方案
使用前缀遍历文件夹中的对象
bucket_name = 'example_bucket'
prefix = 'products/product1/rawmat'
for my_object in bucket_name.objects.filter(Prefix= prefix):
print(my_object)
推荐阅读
- groovy - 如何使用 groovy.util.XmlParser 访问包含句点的 XML 节点
- chilkat - 为什么 purebasic chilkat 模块 30 天试用激活语法失败?
- apache-kafka - Kafka Streams - init() 中的转发记录
- javascript - 过滤模态div内的数据
- python - Python - 将文本解析、拆分和分离成单独的行
- umbraco8 - I get the error when using get property value on Umbraco v8
- windows - Changing git config's http.sslCAInfo has no effect on clone command's certificat verify location
- momentjs - 使用 Moment.js 将本地日期、时间和时区解析为 UTC 字符串的代码
- php - Place Order button not working in WooCommerce
- vba - Select 2 rows of data to cut, once cell containing "1" is found