如何从 google 云 python 库中获取对象的文件大小?
How to get file size of objects from google cloud python library?
问题
大家好。我目前正在尝试以编程方式从 google-cloud
python 库中获取对象的文件大小。
这是我现在拥有的。
from google.cloud import storage
client = storage.Client()
bucket = client.get_bucket("example-bucket-name")
object = bucket.blob("example-object-name.jpg")
print(object.exists())
>>> True
print(object.chunk_size)
>>> None
在我看来,google-cloud
库忽略了将数据加载到属性 chunk_size, content_type, etc, ...
问题
如何强制 google-cloud
将实际数据加载到 blob 各自的元数据属性中 - 而不是将所有内容都保留为 None
?
调用 get_blob
而不是 blob
。
在 this link 查看函数 blob_metadata
的源代码。它展示了如何获取 blob 的各种元数据属性,包括其大小。
如果上面的 link 死了,试着在这个目录中四处寻找:Storage Client Samples
在 Blob
上致电 size
。
from google.cloud import storage
# create client
client: storage.client.Client = storage.Client('projectname')
# get bucket
bucket: storage.bucket.Bucket = client.get_bucket('bucketname')
size_in_bytes = bucket.get_blob('filename').size
问题
大家好。我目前正在尝试以编程方式从 google-cloud
python 库中获取对象的文件大小。
这是我现在拥有的。
from google.cloud import storage
client = storage.Client()
bucket = client.get_bucket("example-bucket-name")
object = bucket.blob("example-object-name.jpg")
print(object.exists())
>>> True
print(object.chunk_size)
>>> None
在我看来,google-cloud
库忽略了将数据加载到属性 chunk_size, content_type, etc, ...
问题
如何强制 google-cloud
将实际数据加载到 blob 各自的元数据属性中 - 而不是将所有内容都保留为 None
?
调用 get_blob
而不是 blob
。
在 this link 查看函数 blob_metadata
的源代码。它展示了如何获取 blob 的各种元数据属性,包括其大小。
如果上面的 link 死了,试着在这个目录中四处寻找:Storage Client Samples
在 Blob
上致电 size
。
from google.cloud import storage
# create client
client: storage.client.Client = storage.Client('projectname')
# get bucket
bucket: storage.bucket.Bucket = client.get_bucket('bucketname')
size_in_bytes = bucket.get_blob('filename').size