我可以使用以下内容将Google存储中的数据移动到存储区:
gsutil cp afile.txt gs://my-bucket
如何使用python api库执行相同的操作:
from google.cloud import storage
storage_client = storage.Client()
# Make an authenticated API request
buckets = list(storage_client.list_buckets())
print(buckets)
找不到上述内容。
答案 0 :(得分:1)
有一个API客户端库代码示例代码here。我的代码通常如下所示,它们提供的代码略有不同:
from google.cloud import storage
client = storage.Client(project='<myprojectname>')
mybucket = storage.bucket.Bucket(client=client, name='mybucket')
mydatapath = 'C:\whatever\something' + '\\' #etc
blob = mybucket.blob('afile.txt')
blob.upload_from_filename(mydatapath + 'afile.txt')
如果感兴趣,另一种方法是运行&#34; gsutil&#34;命令行如何使用子进程命令键入原始帖子,例如:
import subprocess
subprocess.call("gsutil cp afile.txt gs://mybucket/", shell=True)
在我看来,这两种方法的优点和缺点取决于你想要实现的目标 - 后一种方法允许多线程,如果你有许多文件要上传,而前一种方法可能允许更好的控制,元数据的规范对于每个文件等。