使用 Python 客户端的 Google BigQuery API

Posted

技术标签:

【中文标题】使用 Python 客户端的 Google BigQuery API【英文标题】:Google BigQuery API using Python client 【发布时间】:2020-03-29 16:07:05 【问题描述】:

我正在尝试使用 BigQuery Python API, 但是根据以下命令:

client = bigquery.Client()

我收到一个错误,即找不到存储服务帐户密钥的文件。

google.auth.exceptions.DefaultCredentialsError:文件 未找到“C:\Projects\Agent Scoring-a5bf49c5af93.json”。

我按照这里的说明进行操作 https://cloud.google.com/bigquery/docs/quickstarts/quickstart-client-libraries

如果知道文件的路径,报错信息不清楚,怎么找不到。

我使用的是 Windows 10。

【问题讨论】:

你设置好你的开发环境了吗?查看此链接:cloud.google.com/appengine/docs/standard/java/building-app/… 嗨克劳迪奥,不,我没有。我将检查 Python 3 运行时环境。 【参考方案1】:

根据bigquery.Client()开发guidelines,您发现的问题可能与:

google.auth.exceptions.DefaultCredentialsError – 如果未指定凭据且库无法获取默认值,则引发 凭据。

因此,正如评论部分中提到的@Claudio,您必须应用 GCP Bigquery API 库 documentation 中描述的步骤,安装某些 Bigquery Python client 并传播指向 JSON 密钥文件的 GOOGLE_APPLICATION_CREDENTIALS 环境变量, 更多关于 GCP 身份验证方法的信息你可以找到here。

【讨论】:

以上是关于使用 Python 客户端的 Google BigQuery API的主要内容,如果未能解决你的问题,请参考以下文章

Google API 批处理请求为通过 Python 客户端的每次调用返回 HttpError 404

Big Query 表对象属性为空

处理使用 docker 向 google big query 读取和写入数据的 python 脚本的自动身份验证

如何在使用 Python (PyCharm) 查询 Google Big Query 时修复 CERTIFICATE_VERIFY_FAILED 错误

由于 Google Big Query 中的正则表达式导致 Python 错误

在 Google Big Query 中使用 bq 命令行执行查询