flaskでGAEからGSCにファイルをアップロードするまで
GAE standard environmentからGCSへファイルをアップロードしたい。 下記にあるようにGAE standard eivironmentではclinet libraryが異なるので注意が必要。
pip install --upgrade google-cloud-storage
認証を通すためにsecret.jsonへ環境変数を設定しておく。
export GOOGLE_APPLICATION_CREDENTIALS="/path/to/file/[FILE_NAME].json"
from flask import request from google.cloud import storage @app.route('/upload', method=['POST']) def upload(): if 'file' not in request.files: return 'No file uploaded.', 400 uploaded_file = request.files.get('file') client = storage.Client() bucket = client.get_bucket('bucket-id-here') blob = bucket.blob('blob-name') blob.upload_from_file(uploaded_file) ``` ## 参考 [https://pypi.org/project/google-cloud-storage/:title] [https://googleapis.github.io/google-cloud-python/latest/storage/blobs.html#google.cloud.storage.blob.Blob.upload_from_file:title]