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

使用Python gspread,能否通过服务账号访问他人Google Sheets?

如何用gspread服务账号访问他人的Google Sheets

完全可以通过服务账号访问并操作他人账号下的Google Sheets,核心是完成服务账号授权操作,具体步骤如下:

  • 获取服务账号邮箱:从你的服务账号密钥JSON文件中找到client_email字段,格式通常为[账号标识]@[GCP项目ID].iam.gserviceaccount.com。
  • 让表格拥有者授权:打开目标Google Sheets,点击右上角「共享」,将上述服务账号邮箱添加为协作者,根据需求设置权限(如「编辑者」「查看者」)。
  • 正常编写gspread代码:用服务账号密钥初始化客户端后,即可直接访问目标表格,示例代码:
import gspread
from google.oauth2.service_account import Credentials

# 配置权限范围
SCOPES = ['https://www.googleapis.com/auth/spreadsheets']
# 加载服务账号密钥文件
creds = Credentials.from_service_account_file('your-service-key.json', scopes=SCOPES)
client = gspread.authorize(creds)

# 通过表格ID访问目标表格
target_sheet = client.open_by_key('目标表格的ID')
# 进行读写操作
worksheet = target_sheet.get_worksheet(0)
worksheet.update_cell(1, 1, '测试写入内容')

注意事项

  • 若出现访问被拒绝的错误,优先检查服务账号邮箱是否被正确共享,以及权限级别是否满足操作需求。
  • 确保服务账号密钥文件路径正确,且文件未泄露给无关人员。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 01:36:59