Google Colab中InstalledAppFlow无run_console属性报错求助
问题原因
run_console()方法在新版google-auth-oauthlib中已被移除,即便你安装指定旧版本,Colab的环境依赖可能存在冲突,导致旧版本库没有真正生效,所以触发AttributeError。
解决方案
方案一:替换为官方推荐的Colab适配授权流程
把原来的creds = flow.run_console()代码段替换成以下逻辑,通过手动复制授权链接、输入授权码完成验证:
# 生成授权链接,强制弹出授权确认页面 auth_url, _ = flow.authorization_url(prompt='consent') print("请复制下方链接到浏览器打开,完成授权后复制授权码:") print(auth_url) # 接收用户输入的授权码 authorization_code = input("请粘贴授权码:") # 通过授权码获取凭证 creds = flow.fetch_token(code=authorization_code)
方案二:彻底重装旧版依赖并重启内核
如果一定要保留run_console()方法,需要彻底清理现有依赖并重启Colab运行时:
- 先执行卸载和重装命令:
!pip uninstall -y google-auth-oauthlib google-auth google-api-python-client google-auth-httplib2 !pip install google-api-python-client==1.7.2 !pip install google-auth==1.8.0 !pip install google-auth-httplib2==0.0.3 !pip install google-auth-oauthlib==0.4.1
- 安装完成后,点击Colab顶部菜单栏的「运行时」→「重启运行时」
- 重启完成后再重新运行你的脚本
补充说明
run_console()属于旧版库的废弃方法,Google官方现在推荐使用基于授权码的手动流程适配云端环境(比如Colab)- Colab无法直接启动本地服务器,所以不能直接用
run_local_server(),必须通过手动复制链接+输入授权码的方式完成授权
内容的提问来源于stack exchange,提问作者usui
相关产品推荐
相关产品推荐

