首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Google Translate API Key json格式

Google Translate API Key json格式
EN

Stack Overflow用户
提问于 2021-09-25 07:29:19
回答 1查看 224关注 0票数 0

我正在尝试从本地机器(而不是Google云)使用google translate API。

在运行以下代码之前,我已经运行了

export GOOGLE_APPLICATION_CREDENTIALS=API.json

其中API.json为:

{ "key":"the_key_code" }

运行此代码后:

代码语言:javascript
复制
import google.auth
from google.cloud import translate
_, PROJECT_ID = google.auth.default()
TRANSLATE = translate.TranslationServiceClient()

我得到了以下错误:

DefaultCredentialsError: The file API_.json does not have a valid type. Type is None, expected one of ('authorized_user', 'service_account', 'external_account')

然后我向json添加了类型: service_account,并得到了这个错误:

DefaultCredentialsError: ('Failed to load service account credentials from API.json', ValueError('Service account info was not in the expected format, missing fields client_email, token_uri.'))

我找不到任何关于API密钥json文件的格式的文档,也没有办法从google云平台导出json文件,只有复制密钥的能力。

关于如何在本地机器上进行翻译工作,有什么建议吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-25 10:00:09

我也不得不为Analytics API创建一个凭证文件,并且同样面临着信息的缺乏。我别无选择,使用了新的google API,你必须创建一个应用程序,选择你想要的Cloud Dashboard,然后Google为你提供一个有效的凭证文件。

我的文件是这样的:

代码语言:javascript
复制
{
  "type": "service_account",
  "project_id": "***",
  "private_key_id": "***",
  "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANB***xmw0Fcs=\n-----END PRIVATE KEY-----\n",
  "client_email": "***",
  "client_id": "***",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://oauth2.googleapis.com/token",
  "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
  "client_x509_cert_url": "***"
}

这就是为什么我非常确定你必须对translate API做同样的事情,首先声明"type": "service_account",匹配你得到的错误。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69324034

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档