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

在WSL中通过Python调用Google Drive API时遭遇404错误

解决Google Drive共享盘API访问404错误的排查方案

优先排查服务账号权限问题(最常见原因)

404错误大概率不是防火墙导致,而是服务账号未获得共享盘访问权限:

  • 打开目标共享云端硬盘,进入「管理成员」页面,将服务账号的邮箱(可从credenciais.json的client_email字段获取)添加为成员,至少分配「查看者」及以上权限,保存后等待5-10分钟让权限生效。

验证API启用状态

  • 登录Google Cloud控制台,确认已启用Google Drive API(不是其他关联API)。若未启用,搜索并启用后重新测试。

代码参数与异常排查

优化代码以获取详细错误信息

添加异常捕获,打印完整错误详情,便于定位问题:

from googleapiclient.discovery import build
from google.oauth2 import service_account
from googleapiclient.errors import HttpError

shared_drive_id = 'xxxxxcensuredxxxxx'   
credentials_path = '/home/flora_sauer/credenciais.json'
credentials = service_account.Credentials.from_service_account_file(
    credentials_path, 
    scopes=['https://www.googleapis.com/auth/drive']
)

drive_service = build('drive', 'v3', credentials=credentials)

try:
    results = drive_service.files().list(
        corpora='drive',
        driveId=shared_drive_id,
        includeItemsFromAllDrives=True,
        supportsAllDrives=True,
        pageSize=100,
        fields="files(name)"  # 仅请求需要的字段,减少数据传输
    ).execute()
    files = results.get('files', [])
    if not files:
        print("共享盘中未找到文件")
    else:
        for file in files:
            print(file['name'])
except HttpError as error:
    print(f"错误代码:{error.resp.status}")
    print(f"错误内容:{error.content.decode('utf-8')}")

参数检查

  • 确认driveId完全匹配共享盘ID,避免输入错误或多余字符。
  • corpora='drive'必须与driveId同时使用,参数搭配正确。

验证WSL网络与防火墙问题

若上述排查均无效,再验证网络连通性:

  1. 在WSL终端执行ping googleapis.com,确认能正常解析并连通。
  2. 用API密钥直接调用测试(仅适用于公开共享盘):
curl "https://www.googleapis.com/drive/v3/files?corpora=drive&driveId=你的共享盘ID&includeItemsFromAllDrives=true&supportsAllDrives=true&key=你的API密钥"
  • 若返回正常数据,说明WSL网络无问题;若仍返回404,回到权限配置环节排查。
  • 若curl请求超时或被拒绝,再检查Windows防火墙是否阻止WSL出站连接:打开Windows Defender防火墙,确保允许WSL相关的网络请求(可临时关闭防火墙测试,确认后再配置规则)。

其他身份验证方式的注意事项

  • API密钥:仅能访问公开共享的文件/文件夹,私有共享盘无法使用此方式,出现404属于正常情况。
  • OAuth客户端ID:需确保授权的Gmail账号本身拥有共享盘访问权限,且使用「桌面应用」类型的客户端ID(避免Web应用的跳转限制)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 00:37:37