2013-11-22 70 views
0

我是GCS的新手。 &试图读取&从GCS下载文件。从GCS下载文件:Google App Engine

这里我写了几行。

from google.appengine.api import files 

def download_data_from_gcs(request): 
    file_name = '/gs/bucket-name-1/new_file.csv' # change bucket/object names to suit your needs 
    with files.open(file_name, 'r') as f: 
     data = f.read() 
     logging.error(data) # I'm getting here csv data. Its around of ~20-25 MB 

现在比较棘手的部分是按原样下载这个dataEx. new_file.csv

有人解决了它吗?将欣赏这种方式。

谢谢

+0

你要把它下载到哪里?对于App Engine应用程序,用于代码中还是用于最终客户端? –

+0

@DanielRoseman:如果我们可以在客户端下载它,那将会很棒。 –

回答

1

难道你不能直接从URL下载吗?

https://storage.cloud.google.com/bucket-name-1/new_file.csv

如果需要谷歌登录,然后使用默认的ACL从桶里文件是英寸

当你写你的文件GCS,您可以设置ACL(权限)的文件在选项字典中公开:

gcs_file = cloudstorage.open(filename, 'w', content_type='text/plain', options={'x-goog-acl': 'public-read'}) 
+0

它首先需要谷歌身份验证才能下载。 –

+0

这不可能通过程序吗? –

+0

要编写文件代码,请参阅:[转移到GCS](http://stackoverflow.com/questions/20139095/moving-blobstore-to-gcs-google-app-engine-python) –