如何使用Python从Google Cloud Storage网址创建Blob

时间:2018-08-10 02:27:54

标签: google-cloud-storage

我有一个使用Google云端存储API创建的Blob,并使用blob.path保存了其路径。路径的格式为

/ b / bucketname / o / some%2Fobject%2Fid

如何从此URL重新创建Blob?

1 个答案:

答案 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)