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

MacBook Air(mid2013)+Anaconda/JupyterLab环境下初始化gspread时出现JSON文件找不到错误的技术求助

解决gspread服务账号认证的FileNotFoundError问题

看起来你遇到的核心问题是文件路径不正确,不管是默认路径还是自定义路径都没写对,我来一步步帮你解决:

方案1:使用默认路径(推荐)

gspread默认会去~/.config/gspread/service_account.json找文件,你需要:

  • 打开终端,先确认你的用户名:
    whoami
    
    比如输出是davi,那么你的主目录就是/Users/davi
  • 创建对应的目录结构:
    mkdir -p ~/.config/gspread
    
  • 把你下载的服务账号JSON文件重命名为service_account.json,然后移到这个目录里:
    mv ~/Desktop/your-original-file.json ~/.config/gspread/service_account.json
    
  • 然后回到JupyterLab运行原来的代码:
    import gspread
    gc = gspread.service_account()
    

方案2:使用自定义绝对路径

如果不想用默认路径,一定要写正确的绝对路径:

  • Mac的桌面路径是~/Desktop/xxx.json(注意Desktop首字母大写,~/代表你的主目录,不能省略),所以正确的写法是:
    import gspread
    gc = gspread.service_account(filename='/Users/你的用户名/Desktop/credentials.json')
    
    或者用~/简化:
    gc = gspread.service_account(filename='~/Desktop/credentials.json')
    
  • 你之前写的/Desktop/credentials.json是错误的,这个路径指向根目录下的Desktop,Mac系统里根本不存在这个目录,所以会报错。

方案3:把JSON放在JupyterLab的工作目录

  • 在JupyterLab里先运行以下代码查看当前工作目录:
    import os
    print(os.getcwd())
    
  • 把你的credentials.json文件复制到这个目录下,然后直接用文件名调用:
    import gspread
    gc = gspread.service_account(filename='credentials.json')
    

这样应该就能解决找不到文件的问题了,试试看!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 21:07:53