You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python从Firebase Storage文件夹中下载图片

从Firebase Storage下载图片的Python实现方案

Firebase Storage存储结构截图

前置准备

  • 安装Firebase Admin SDK:执行命令 pip install firebase-admin
  • 前往Firebase控制台>项目设置>服务账户,下载服务账号JSON密钥文件,保存到本地
  • 记录你的Firebase Storage存储桶地址,格式为gs://<你的项目ID>.appspot.com,可在Storage页面顶部获取

完整实现代码

import firebase_admin
from firebase_admin import credentials
from firebase_admin import storage

# 初始化SDK,替换为你自己的服务账号JSON文件路径
cred = credentials.Certificate("path/to/your/serviceAccountKey.json")
firebase_admin.initialize_app(cred, {
    'storageBucket': '<你的存储桶地址,去掉gs://前缀,比如xxx.appspot.com>'
})

# 获取存储桶实例
bucket = storage.bucket()

def download_image_from_firebase(remote_file_path, local_save_path):
    # 指定远程文件路径,对应Storage里的文件层级,比如assets/background.jpg
    blob = bucket.blob(remote_file_path)
    # 下载到本地路径
    blob.download_to_filename(local_save_path)
    print(f"图片已成功下载到:{local_save_path}")

# 调用示例,替换为你实际的远程文件路径和本地保存路径
download_image_from_firebase("your/folder/image.jpg", "./local_image.jpg")

常见场景补充

如果不需要保存到本地,要直接读取为字节流用于后续处理(比如用PIL打开、上传到其他服务等),可以用以下代码替换下载逻辑:

from io import BytesIO
from PIL import Image

blob = bucket.blob("your/folder/image.jpg")
image_bytes = blob.download_as_bytes()
image = Image.open(BytesIO(image_bytes))
# 后续可以直接对image对象进行操作

注意事项

  • 确保服务账号拥有Storage的读取权限,默认服务账号自带权限,若提示权限不足可以在Google Cloud控制台给对应服务账号授予Storage Object Viewer角色,或临时调整Storage规则允许读取测试
  • 远程文件路径要和你截图里的存储层级完全一致,区分大小写

内容的提问来源于stack exchange,提问作者DDD

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 10:24:04