如何在gae cloud上打开gzip文件?

时间:2016-02-29 20:12:57

标签: python google-app-engine gzip google-cloud-storage google-compute-engine

我正在使用python 2.7和Google Compute Cloud。我想处理上传到gcs数据存储区的gzip文件。在Python上,这将是:

import gzip
with gzip.open('myfile.gz', 'r') as f:
    f.read()

由于GCS不允许这样做,我在Google Cloud Storage Client Library Functions找到的唯一选项是:

import cloudstorage
cloudstorage.open('myfile.gz', 'r'):
    f.read()

不会打开gzip文件。关于如何做到这一点的任何提示?

1 个答案:

答案 0 :(得分:3)

您可以使用GCS客户端lib提供的文件对象,通过文件对象使用备用gzip.GzipFile()访问:

import cloudstorage
import gzip

with cloudstorage.open('myfile.gz', 'r') as f:
    content = gzip.GzipFile(fileobj=f).read()