在pycharm虚拟环境设置环境变量的查错和解决经历

在pycharm虚拟环境设置环境变量的查错和解决经历为了避免项目之间的环境冲突,pycharm工具可以为你的项目创建一个虚拟环境,这个工具非常实用,不过在一些设置方面,有一些地方需要注意。本人在调用google的API的过程中,就碰到了如下的问题,在运行程序的时候,报如下错误Traceback(mostrecentcalllast):File”D:/MyPythonWorkspaces/projects/Project_le…

为了避免项目之间的环境冲突,pycharm工具可以为你的项目创建一个虚拟环境,这个工具非常实用,不过在一些设置方面,有一些地方需要注意。

本人在调用google的API的过程中,就碰到了如下的问题,在运行程序的时候,报如下错误

Traceback (most recent call last):
  File “D:/MyPythonWorkspaces/projects/Project_learning/transcribe_streaming_mic.py”, line 194, in <module>
    main()
  File “D:/MyPythonWorkspaces/projects/Project_learning/transcribe_streaming_mic.py”, line 173, in main
    client = speech.SpeechClient()
  File “C:\Users\pc\AppData\Local\Programs\Python\Python36\lib\site-packages\google\cloud\speech_v1\gapic\speech_client.py”, line 144, in __init__
    address=self.SERVICE_ADDRESS, channel=channel, credentials=credentials
  File “C:\Users\pc\AppData\Local\Programs\Python\Python36\lib\site-packages\google\cloud\speech_v1\gapic\transports\speech_grpc_transport.py”, line 61, in __init__
    channel = self.create_channel(address=address, credentials=credentials)
  File “C:\Users\pc\AppData\Local\Programs\Python\Python36\lib\site-packages\google\cloud\speech_v1\gapic\transports\speech_grpc_transport.py”, line 92, in create_channel
    address, credentials=credentials, scopes=cls._OAUTH_SCOPES
  File “C:\Users\pc\AppData\Local\Programs\Python\Python36\lib\site-packages\google\api_core\grpc_helpers.py”, line 177, in create_channel
    credentials, _ = google.auth.default(scopes=scopes)
  File “C:\Users\pc\AppData\Local\Programs\Python\Python36\lib\site-packages\google\auth\_default.py”, line 317, in default
    raise exceptions.DefaultCredentialsError(_HELP_MESSAGE)

google.auth.exceptions.DefaultCredentialsError: Could not automatically determine credentials. Please set GOOGLE_APPLICATION_CREDENTIALS or explicitly create credentials and re-run the application. For more information, please see https://cloud.google.com/docs/authentication/getting-started
 

其实这个错误很简单,无非是申请密钥文件(如何申请密钥文件,本文就不作解释了),然后再配置环境变量GOOGLE_APPLICATION_CREDENTIALS指向密钥文件的路径,因此,我在cmd窗口中,进入虚拟环境并配置了环境变量:

D:\...\venv\Scripts>activate     ## 进入虚拟环境所在目录,运行Scriptes目录下的activate进入虚拟环境
(venv) D:\...\venv\Scripts>      ## 在提示符的最前面出现(venv),这表明已经进入了venv虚拟环境
(venv) D:\...\venv\Scripts>set GOOGLE_APPLICATION_CREDENTIALS=“D:\MyWorkspace\Google API\mykey.json"
## 为环境变量GOOGLE_APPLICATION_CREDENTIALS设置密钥路径

##环境变量设置成功

密钥设置成功后,我再次回到pycharm中运行那个程序,结果仍然报出同样的错误。

又考虑可能是因为不在同一个会话当中,所以环境变量在程序运行时没有生效,可能需要在pycharm的Terminal中进行环境变量的设置才行。所以进入pycharm,做了同样的设置。

在pycharm虚拟环境设置环境变量的查错和解决经历

结果发现,运行程序仍然报出同样的错误。

这下有点儿懵逼了,在程序中加入了如下两行代码,想看看究竟

import os
print('Credendtials from environ: {}'.format(os.environ.get('GOOGLE_APPLICATION_CREDENTIALS')))

结果发现无论我采用上述哪种方式设置这个环境变量,打印出来的结果都是:

Credendtials from environ: None

但是我坚持认为pycharm这么牛逼的集成开发环境,不可能搞不定这个事情,否则还怎么混啊?借着这股牛筋,开始了我的搜索菜单的历程,结果,结果,让我找到了这个菜单,(*^__^*) 嘻嘻……

Run>Edit Configurations ,进入界面后,找到Environment –> Environment variables   没错,就是他了,在这个设置中增加一条GOOGLE_APPLICATION_CREDENTIALS的设置。终于大功告成。

在pycharm虚拟环境设置环境变量的查错和解决经历

写这篇博文,除了让自己记忆深刻一点儿之外,希望也能让其他同学少走些弯路。希望能对大家有所帮助。

今天的文章在pycharm虚拟环境设置环境变量的查错和解决经历分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/26333.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注