Colab调用gspread无法找到Google Sheets文档的问题求助
解决gspread的SpreadsheetNotFound错误问题
核心错误原因
你用gc.open('/content/drive/MyDrive/folder/worksheet.gsheets')传入了Colab挂载后的本地路径,但gspread的open()方法不识别本地路径——它是对接Google Sheets API,只能通过云端的表格名称或文件ID来定位表格,和Drive的挂载路径无关。
正确的解决方法
方法1:直接用表格名称打开
直接使用Google Sheets在云端显示的名称(不用加.gsheets后缀):
gc = gspread.authorize(creds) # 传入表格的云端名称,无需路径 spreadsheet = gc.open("worksheet") # 获取第一个工作表的数据并转为DataFrame df = spreadsheet.sheet1.get_all_records()
注意:要确保名称完全匹配(包括大小写、空格),如果有重名表格,可能会打开错误的那一个。
方法2:用文件ID打开(更可靠)
Google Sheets的文件ID是最精准的定位方式:
- 打开Drive里的目标表格,浏览器地址栏中
https://docs.google.com/spreadsheets/d/[这里就是文件ID]/edit的字符串就是ID - 代码中用
open_by_key()方法:
gc = gspread.authorize(creds) # 替换成你的表格ID spreadsheet_id = "XXXXX-你的表格ID-XXXXX" spreadsheet = gc.open_by_key(spreadsheet_id) df = spreadsheet.sheet1.get_all_records()
额外排查点
- 确认授权账号(
creds对应的账号)有权限访问该表格,如果是共享文件,要确保账号已被添加为协作者 - 检查
.gsheets文件本质是Google Sheets的快捷方式,并非实际表格文件,不能通过本地路径直接读取
内容的提问来源于stack exchange,提问作者jd2504
相关产品推荐
相关产品推荐

