我使用了here找到的api示例。
正在运行gcloud config list
会将我的默认项目显示为project = multichoice-insights
代码的重要摘录显示我获得了默认凭据:
credentials = GoogleCredentials.get_application_default().create_scoped(
['https://www.googleapis.com/auth/cloud-platform'],
)
但是,当我尝试使用api时,收到错误消息:
googleapiclient.errors.HttpError: <HttpError 403 when requesting
https://language.googleapis.com/v1beta1/documents:analyzeSentiment?
alt=json returned "Google Cloud Natural Language API has not been used
in project google.com:cloudsdktool before or it is disabled. Enable it
by visiting
https://console.developers.google.com/apis/api/language.googleapis.com/over
view?project=google.com:cloudsdktool then retry. If you enabled this
API recently, wait a few minutes for the action to propagate to our
systems and retry.">
我认为这表明项目使用了:project=google.com:cloudsdktool
如何将其更改为project-name
?
我在控制台中启用了这个api。
答案 0 :(得分:3)
对于有此问题的任何人:
需要设置他们的Environment变量。如果您使用的是virtualenvs,请按如下方式设置变量。
在文件中:.virtualenvs/env_name/bin
编辑文件activate以包含以下行:
GOOGLE_APPLICATION_CREDENTIALS=/abs/path/to/credentials.json
这个credentials.json是从api页面下载的。可以从here
收集完整说明希望这有助于某人。