我正在尝试建立一个新的Colaboratory笔记本来分析我们在BigQuery中的数据。在示例文档之后,我将第一个代码段作为:
project_id = '<redacted>'
from google.colab import auth
auth.authenticate_user()
当我运行时,我收到以下警告,重复两次:
WARNING:google.auth._default:No project ID could be determined from the credentials
at GOOGLE_APPLICATION_CREDENTIALS Consider setting the GOOGLE_CLOUD_PROJECT
environment variable
尝试通过os.environ
设置项目ID无效。
每次我使用pandas执行SQL语句时,我也会收到此错误,即使我提供它,ála:
pd.io.gbq.read_gbq(sql, project_id=project_id, verbose=False, dialect='standard')
答案 0 :(得分:1)
所以这里有几个问题:
你为什么看到这些警告?
您看到的消息是日志消息;如果您看到它们,则表示您调用的代码或代码正在调用类似logging.basicConfig()
的内容。这将导致足够级别的日志消息(默认为WARNING
)将显示给stderr,这就是这里发生的事情。
这些警告是什么?
此案例中的警告告诉您google.auth
无法找出项目;碰巧,关于环境变量的消息实际上是假的,因为在这个路径中没有读取命名的var。我filed a bug upstream。
您有两个简单的选择:
关闭日志记录(如何执行此操作将根据您的启用方式而有所不同)。您还可以有选择地将日志级别设置为其他级别。
忽略这些消息。 (它们是无害的,但令人讨厌。)
我提交了一个colab issue来跟踪,让这不那么烦人。
答案 1 :(得分:0)
您应该能够使用
为指定项目的 GCP 调用设置环境import os
os.environ["GOOGLE_CLOUD_PROJECT"] = project_id