繁体   English   中英

Firebase 实时数据库和存储问题 Python

[英]Firebase Real-Time Data Base & Storage Problem Python

我同时使用 firebase 实时数据库和 Firebase 存储,但默认应用程序出现问题。 存储命令转到默认应用程序,即数据库应用程序,但找不到所需的数据。

!pip install pygsheets
import pygsheets
import pandas as pd
from datetime import datetime
import pytz
from pydrive.auth import GoogleAuth
from google.colab import drive
from pydrive.drive import GoogleDrive
from google.colab import auth
from oauth2client.client import GoogleCredentials
from firebase_admin import credentials, initialize_app, storage, db
import matplotlib.pyplot as plt

cred = credentials.Certificate('key.json')
database = initialize_app(cred, {'databaseURL': "https://project-147196781260390231-default-rtdb.europe-west1.firebasedatabase.app/"})
imgStorage = initialize_app(cred, {'storageBucket': 'project-147196781260390231.appspot.com'}, name = 'bucket')

dt = datetime.now(cairoTz)
y = dt.year
M = dt.month
d = dt.day
h = dt.hour
m = dt.minute
s = dt.second

lhour = df.loc\[(df\['Hour'\] == h) | ((df\['Hour'\] ==  h - 1) & (df\['Minute'\] \>= m))\]
lday = df.loc\[(df\['Day'\] == d)| ((df\['Day'\] ==  d - 1) & (df\['Hour'\] \>= h))\]
lall = df

tempHplt = plt.figure(figsize=(10, 3))
tempHplt_name = 'tempHplt.png'
xTemph = lhour\['Minute'\].astype(int).astype(str)
yTemph = lhour\['Temperature'\]
plt.plot(xTemph, yTemph)
plt.savefig('tempHplt.png')
file_path = tempHplt_name
bucket = storage.bucket() # storage bucket
blob = bucket.blob(file_path)
blob.upload_from_filename(file_path)

我尝试将初始化应用程序放入变量中并从中调用存储函数,但出现错误。

AttributeError: 'App' 对象没有属性 'storage'

如果不使用变量,错误如下:

ValueError:未指定存储桶名称。 在初始化应用程序时通过“storageBucket”选项指定存储桶名称,或者在调用 storage.bucket() 函数时明确指定存储桶名称。

好的,所以解决方案是指定应用程序

bucket = storage.bucket(imgStorage) # storage bucket

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM