はじめに
題の通り今回は、Firebase StorageにPythonを使ってアップロードをするというサンプルです。
基本的にFirebaseをAPIから操作する場合はCredentialを必要とするので間違ってPublicな場所に公開しちゃった〜とかに気をつけましょう
環境
使用するライブラリ
Firebase設定
右ページの アプリを追加
ボタンを押して、ウェブアプリに Firebase を追加
を押して出てくるポップアップの内容をどっかにコピーする。
めっちゃ有り難いですね。このまま使える!
Pyrebase設定
Pyrebaseはpipでインストールできます
$ pip install pyrebase
import pyrebase config = { 'apiKey': 'apiKey', 'authDomain': 'projectId.firebaseapp.com', 'databaseURL': 'https://databaseName.firebaseio.com', 'storageBucket': 'projectId.appspot.com' } firebase = pyrebase.initialize_app(config)
それぞれ config
辞書のvalue側にさっきコピったものを貼っ付ける。
終わり
アップロードをする
Storageの最適なルールを設定しておいてください。
今回は allow read, write;
の設定です。
また、以下は画像PNGをアップロードするサンプルです。
import pyrebase config = { 'apiKey': 'apiKey', 'authDomain': 'projectId.firebaseapp.com', 'databaseURL': 'https://databaseName.firebaseio.com', 'storageBucket': 'projectId.appspot.com' } firebase = pyrebase.initialize_app(config) photo_path = '/path/to/image.png' storage = firebase.storage() storage.child('image/hoge/image.png').put(photo_path) # どこにアップロードしたいかのパス指定もできます image_url = storage.child('image/hoge/image.png').get_url(token=None) # ダウンロードURLの取得
最後に
また時間が開いてしまった投稿になってしまった。ちょっともう無理かもしれない。
22週間ずっとブログへの投稿が続いただけでもすごいと思う。自分を自分で褒めたい。
ということで、とても簡素な記事ですがPythonを使ってFirebase Storageにアップロードするサンプルでした。
Firebaseが公式でリリースしている firebase-admin
というものがあるのですが、こっちだとなんかよくわからない状態になったので以前から使っていたPyrebaseを使用しました。
Introduction to the Admin Cloud Storage API | Firebase Documentation
多分ここら辺を読んでいけばいけるんだと思う。