Jav*_*een 5 python size file amazon-s3
我想计算 python 中 S3 存储桶中所有文件的大小,这是我迄今为止尝试过的代码:
import boto3
s3_client = boto3.client('s3')
bucket = 'bucket-name'
prefix = 'path/to/folder'
len=0
response = s3_client.list_objects(Bucket = bucket,Prefix = prefix)
for file in response['Contents']:
name = file['Key'].rsplit('/', 1)
len+=name['ContentLength']
Run Code Online (Sandbox Code Playgroud)
我不确定如何获得文件的大小:有name['ContentLength']
什么想法吗?
使用file['Size']来代替。如果使用list_objects方法,您必须检查 的值,response['IsTruncated']因为响应将包含最多 1000 个对象。如果IsTruncated是True,则response['NextMarker']用作Prefix以列出存储桶中的剩余对象。
或者,您可以使用Bucket该类
s3 = boto3.resource('s3')
bucket = s3.Bucket('bucket-name')
total_size = 0
for k in bucket.objects.all():
total_size += k.size
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4794 次 |
| 最近记录: |