我有一个使用Google云端存储API创建的Blob,并使用blob.path保存了其路径。路径的格式为
/ b / bucketname / o / some%2Fobject%2Fid
如何从此URL重新创建Blob?
答案 0 :(得分:0)
不幸的是,由于在数据库等中保存blob路径非常普遍,因此GCS API没有提供从路径URL返回到blob的工厂方法。
这是一种工厂方法,可让您从blob.path返回blob:
def blob_from_blobpath(blob_path):
import google.cloud.storage as gcs
blob_path = blob_path[3:] # /b/
slash_loc = blob_path.index('/')
bucket_name = blob_path[:slash_loc]
blob_name = blob_path[(slash_loc+3):] # /o/
bucket = gcs.Client().get_bucket(bucket_name)
return bucket.blob(blob_name)