#python #firebase-admin
#python #firebase-администратор
Вопрос:
Я пытаюсь загрузить очень длинный список файлов в мое хранилище firebase.Я использую python и firebase admin Sdk. Я получаю эту ошибку:
Итак, вот ошибка, которую я получаю: google.api_core.exceptions.Не найдено: 404 СООБЩЕНИЯ https://www.googleapis.com/upload / storage/v1/b/gs://bismart-def3c.appspot.com/o?uploadType=возобновляемый: (‘Заголовки ответов должны содержать заголовок’, ‘местоположение’)
import os
import firebase_admin
from firebase_admin import credentials, firestore, storage
path = 'G:\JURISPRUDENCE'
files = []
fileN = []
cred = credentials.Certificate("C:UsersGeorgebismart-def3c-firebase-adminsdk-ib3f9-6a1f172321.json")
firebase_admin.initialize_app(cred, {
'storageBucket': 'gs://bismart-def3c.appspot.com'
})
def upload(file,name):
db = firestore.client()
bucket = storage.bucket()
blob = bucket.blob(name)
outfile=file
with open(outfile, 'rb') as my_file:
blob.upload_from_file(my_file)
# r=root, d=directories, f = files
for r, d, f in os.walk(path):
for file in f:
if '.docx' in file:
files.append(os.path.join(r, file))
upload(os.path.join(r, file),file)
fileN.append(file)
for f in files:
for k in fileN:
print("uploaded" k)
В настоящее время мне не удается выполнить загрузку
Комментарии:
1.
storageBucket
должно быть просто имя корзины с любыми префиксами, такими какgs://
Ответ №1:
Я переключился на Google cloud / storage api. Он имеет очень простую реализацию: просто так, и я смог загрузить свой файл:
def upload_blob(bucket_name, source_file_name, destination_blob_name):
"""Uploads a file to the bucket."""
storage_client = storage.Client()
bucket = storage_client.get_bucket(bucket_name)
blob = bucket.blob(destination_blob_name)
blob.upload_from_filename(source_file_name)
print('File {} uploaded to {}.'.format(
source_file_name,
destination_blob_name))
Согласно документам. Надеюсь, это поможет любому, кто ищет