我正在使用datalab但是当我尝试在bigquery中查询表时,我收到以下错误:
异常:无效:读取表时出错:....错误消息:无法读取电子表格。错误:未找到包含Google云端硬盘范围的OAuth令牌。
只有与谷歌驱动器表链接的表才会出现这种情况。
现在启用gcp中的google云端硬盘应用
from google.cloud import bigquery
client = bigquery.Client()
sql = """
SELECT * FROM `proyect-xxxx.set_xxx.table_x` LIMIT 1000
"""
df = client.query(sql).to_dataframe()
project_id = 'proyect-xxxx'
df = client.query(sql, project=project_id).to_dataframe()
df.head(3)
异常:无效:读取表时出错:....错误消息:无法读取电子表格。错误:未找到包含Google云端硬盘范围的OAuth令牌。
由于错误您尝试访问Google云端硬盘,其中存储了BigQuery外部表格,但没有为您的oAuth令牌提供权限
您需要转到Google控制台并启用此访问权限以解决您的问题。
您可以使用此link提供有关此主题的操作说明
访问Google API控制台以获取OAuth 2.0凭据,例如Google和您的应用程序都知道的客户端ID和客户端密码。这组值根据您正在构建的应用程序类型而有所不同。例如,JavaScript应用程序不需要保密,但Web服务器应用程序不需要保密。