Google验证未完成致访问被阻:开发者自用脚本授权方案咨询
解决Google Sheets API未验证导致的访问阻止问题
因为你的场景仅需自己及授权客户访问,无需完成Google的官方验证流程,可通过以下两种简单方式解决:
方式一:使用“测试用户”绕过验证限制
- 登录Google Cloud控制台,找到你的项目
- 进入「API和服务」→「OAuth同意屏幕」
- 在「测试用户」板块,添加你自己的Google账号,以及需要访问表格的客户账号
- 保存后重新运行脚本,用添加的测试用户账号授权,就不会再出现验证拦截提示
方式二:改用服务账号(推荐用于自动化脚本)
如果脚本需要无人值守运行,服务账号更合适:
- 在Google Cloud控制台的「IAM与管理员」→「服务账号」页面,创建一个新的服务账号
- 为该服务账号生成JSON格式的密钥,下载到本地
- 打开目标Google表格,点击「共享」,将服务账号的邮箱(格式类似
xxx@xxx.iam.gserviceaccount.com)添加为表格编辑者 - 修改脚本代码,替换原OAuth认证逻辑,改用服务账号认证:
from google.oauth2 import service_account from googleapiclient.discovery import build SCOPES = ['https://www.googleapis.com/auth/spreadsheets'] SERVICE_ACCOUNT_FILE = 'path/to/your/service-account-key.json' credentials = service_account.Credentials.from_service_account_file( SERVICE_ACCOUNT_FILE, scopes=SCOPES) service = build('sheets', 'v4', credentials=credentials) - 运行脚本即可正常访问表格,无需人工授权,也不会触发验证拦截
注意:服务账号是独立身份,必须手动共享表格给它才能访问;客户如果需要手动操作表格,直接共享表格给客户账号即可,不影响脚本运行。
内容的提问来源于stack exchange,提问作者luqui
相关产品推荐
相关产品推荐

