首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DefaultCredentialsError出现“找不到文件”的问题

DefaultCredentialsError出现“找不到文件”的问题
EN

Stack Overflow用户
提问于 2020-04-29 08:30:58
回答 1查看 520关注 0票数 1

我是一个初学者,正在尝试执行一些语音到文本的转换作为实验。我是Google Cloud API的新手,我被Credential Authentication卡住了。

我已经使用this代码尝试转录一个20分钟长的音频文件为文本。我正在使用谷歌协作来做这件事。

我的代码就是imports,一个用于将JSON文件添加到环境路径的代码块,一个链接中的函数,以及一个使用.wav文件的文件路径执行函数的代码块。我没有编辑代码,只是复制了它,并使用了他们使用的相同类型的音频文件(.wav)。

我按照here的说明获取JSON文件进行授权。

为了设置GOOGLE_APPLICATION_CREDENTIALS的环境变量,我在函数前插入了一个代码块,如下所示:

代码语言:javascript
复制
import os
os.environ["GOOGLE_APPLICATION_CREDENTIALS"]='folder_path\\My First Project-##########.json'

这没有引发错误,所以我假设凭据已添加到路径中。但是,当我像这样执行函数时:

代码语言:javascript
复制
sample_long_running_recognize('folder_path\\audio_file.wav')

我得到了错误:

代码语言:javascript
复制
DefaultCredentialsError: File folder_path\\My First Project-##########.json was not found.

在我上面分享的“认证入门”链接中,有一个函数implicit()用于测试认证是否正确完成。我定义了函数并运行了它,我得到了同样的错误。我到底做错了什么?我还按照说明在cmd中运行了set GOOGLE_APPLICATION_CREDENTIALS=folder_path\\My First Project-##########.json。它在那里也没有返回任何错误。那么为什么会说没有找到该文件呢?

我已经重新检查了多次,文件路径没有问题,我只是简单地复制了它并添加了双反斜杠(这是由于错误SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape)

EN

回答 1

Stack Overflow用户

发布于 2021-07-02 21:24:00

我解决了直接在项目文件夹中设置GOOGLE_APPLICATION_CREDENTIALS并删除PATH引号的问题,只需在提示符下运行以下命令

代码语言:javascript
复制
set GOOGLE_APPLICATION_CREDENTIALS=C:\Users\yourUser\credentials-file.json

不带任何引号

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

https://stackoverflow.com/questions/61492272

复制
相关文章

相似问题

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