从大查询中获取数据时出现凭据错误

Posted

技术标签:

【中文标题】从大查询中获取数据时出现凭据错误【英文标题】:Credential error while fetching data from big query 【发布时间】:2019-04-17 09:34:07 【问题描述】:

我正在尝试使用 python 从大查询中获取数据。以下是我的代码:

bg_client = bigquery.Client.from_service_account_json("soy-serenity.json")

QUERY = "(SELECT * from table_name)"

df = gbq.read_gbq(QUERY, project_id = 'soy-serenity', dialect = 'standard')

这一直运行到昨天。不知何故,它给出了以下错误:

read_gbq() got an unexpected keyword argument 'credentials'

【问题讨论】:

【参考方案1】:

试试这样:

from google.oauth2 import service_account
import pandas_gbq

credentials = service_account.Credentials.from_service_account_file(
    'soy-serenity.json',
)
sql = "SELECT * from table_name"
df = pandas_gbq.read_gbq(sql, project_id="soy-serenity", credentials=credentials)

【讨论】:

你进口的是什么?【参考方案2】:

following link 显示了一个示例,您可以运行该示例以使用 Python 从 BigQuery 获取数据:

import os
from google.cloud import bigquery

os.environ['GOOGLE_APPLICATION_CREDENTIALS'] = 'path_to_soy-serenity.json'
client = bigquery.Client()

query = ("SELECT * FROM `bigquery-public-data.usa_names.usa_1910_2013`")
query_job = client.query(query, location="US",) 

for row in query_job:  # API request - fetches results
    assert row[0] == row.name == row["name"]
    print(row)

【讨论】:

以上是关于从大查询中获取数据时出现凭据错误的主要内容,如果未能解决你的问题,请参考以下文章

与 Google Drive 集成时出现凭据错误

从 Google Apps 脚本访问 GoogleSheet 链接的 BigQuery 表时出现“获取驱动器凭据时权限被拒绝”错误

查询数据库时出现 Django 编码错误

在 Android Studio Firestore 中获取查询时出现错误

尝试通过 JSON 查询从 openweathermap 获取数据时出现 FileNotFoundException

尝试获取关系中的数据时出现 Symfony 错误