如何从本地机器访问 GCP bigquery API?
Posted
技术标签:
【中文标题】如何从本地机器访问 GCP bigquery API?【英文标题】:How to access GCP bigquery APIs from local machine? 【发布时间】:2019-12-12 01:42:48 【问题描述】:我需要通过本地计算机上的应用程序代码访问驻留在 GCP bigquery 中的数据集。
我在本地机器上的下载文件夹中创建了一个项目、服务帐户并下载了 json 文件(包含密钥)。服务帐户已获得授权,并且 GCP 中所有必需的 API 均已启用。问题在于设置 GOOGLE_APPLICATION_CREDENTIALS 环境变量。无法从 cloud shell 和 windows cmd 设置它。带key的json文件目前保存在downloads文件夹中。
是否需要将 json 文件(包含密钥)从我的下载文件夹移动到本地计算机上的某个特定路径? 如何从云 shell 为存储在本地计算机上的 json 文件设置 GOOGLE_APPLICATION_CREDENTIALS 以访问 GCP bigquery API?从 google.cloud 导入 bigquery
将 seaborn 导入为 sns
将 matplotlib.pyplot 导入为 plt
将熊猫导入为 pd
将 numpy 导入为 np
导入关闭
sql = """
选择
皮卡日期时间,皮卡经度,皮卡纬度,掉落经度,
dropoff_latitude、passenger_count、trip_distance、tolls_amount、
票价金额,总金额
来自nyc-tlc.yellow.trips
限制 10
"""
client = bigquery.Client() trips = client.query(sql).to_dataframe() 旅行
错误: DefaultCredentialsError:无法自动确定凭据。请设置 GOOGLE_APPLICATION_CREDENTIALS 或显式创建凭据并重新运行应用程序。更多信息请查看https://cloud.google.com/docs/authentication/getting-started
【问题讨论】:
【参考方案1】:这是设置凭据路径的方法:
import os
os.environ['GOOGLE_APPLICATION_CREDENTIALS'] = '/path/to/your/credentials_file.json'
【讨论】:
感谢vinoaj帮我解决这个问题!以上是关于如何从本地机器访问 GCP bigquery API?的主要内容,如果未能解决你的问题,请参考以下文章