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

Python人脸识别项目中bucket.get_blob()报AttributeError求助

解决Firebase存储桶get_blob调用的AttributeError问题

错误本质

你碰到的AttributeError: 'function' object has no attribute 'get_blob',根源是代码里的bucket变量不是Firebase Storage的Bucket实例,而是个函数对象。大多是因为获取存储桶时没正确调用初始化方法导致的。

修复方案(无需改动核心业务代码)

你的核心代码blob = bucket.get_blob(f'Images/{id}.png')完全不用改,只需要确保bucket是正确的Bucket实例:

  1. 修正Firebase存储初始化代码
    按以下流程正确初始化:

    import firebase_admin
    from firebase_admin import credentials
    from firebase_admin import storage
    
    # 加载服务账号密钥并初始化应用
    cred = credentials.Certificate('你的服务账号密钥路径.json')
    firebase_admin.initialize_app(cred, {
        'storageBucket': '你的存储桶名称.appspot.com'
    })
    
    # 关键:调用storage.bucket()获取实例,不是直接引用storage.bucket
    bucket = storage.bucket()
    
  2. 排查常见失误

    • 别把storage.bucket(函数本身)赋值给bucket,必须加括号执行storage.bucket()才能拿到可用的Bucket实例。
    • 确认storageBucket配置里的桶名完全正确,默认桶要带.appspot.com后缀。

验证修复

调整完初始化代码后,再运行你的核心代码,bucket已经是合法实例,就能正常调用get_blob方法了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 08:36:00