アプリケーションが zip ファイルを作成し、それを Google ストレージに保存します。私は、zip ファイルの取得やコンテンツの抽出などを担当する Web サーバー側で作業しています。Web サービスは Python App Engine で記述されています。これまでのところ、資格情報を設定しており、チュートリアルに従うことで、バケットの内容を一覧表示できます。メタデータとファイル情報を読み取ることはできますが、コンテンツを zip ファイル モジュールに取得することはできません。この ガイドに従って、私は機能していないその場所に行き着きました:
uri = boto.storage_uri(BUCKET_NAME, GOOGLE_STORAGE)
objs = uri.get_bucket()
files = []
for obj in objs:
object_contents = StringIO.StringIO()
if obj.get_key():
obj.get_file(object_contents)
my_zip = zipfile.ZipFile(object_contents)
object_contents.close()
files.append(my_zip)
print len(files)
私は得ています:BadZipfile: File is not a zip file
内容を正しく読むにはどうすればよいですか?