我正在尝试使用Python通过BigQuery API连接到Google BigQuery。
我在这里关注此页面:https :
//cloud.google.com/bigquery/bigquery-api-
quickstart
我的代码如下:
import os
import argparse
from apiclient.discovery import build
from apiclient.errors import HttpError
from oauth2client.client import GoogleCredentials
GOOGLE_APPLICATION_CREDENTIALS = './Peepl-cb1dac99bdc0.json'
def main(project_id):
# Grab the application's default credentials from the environment.
credentials = GoogleCredentials.get_application_default()
print(credentials)
# Construct the service object for interacting with the BigQuery API.
bigquery_service = build('bigquery', 'v2', credentials=credentials)
try:
query_request = bigquery_service.jobs()
query_data = {
'query': (
'SELECT TOP(corpus, 10) as title, '
'COUNT(*) as unique_words '
'FROM [publicdata:samples.shakespeare];')
}
query_response = query_request.query(
projectId=project_id,
body=query_data).execute()
print('Query Results:')
for row in query_response['rows']:
print('\t'.join(field['v'] for field in row['f']))
except HttpError as err:
print('Error: {}'.format(err.content))
raise err
if __name__ == '__main__':
parser = argparse.ArgumentParser(
description=__doc__,
formatter_class=argparse.RawDescriptionHelpFormatter)
parser.add_argument('project_id', help='Your Google Cloud Project ID.')
args = parser.parse_args()
main(args.project_id)
但是,当我通过终端运行此代码时,出现以下错误:
oauth2client.client.ApplicationDefaultCredentialsError: The Application Default Credentials are not available. They are available if running in Google Compute Engine. Otherwise, the environment variable GOOGLE_APPLICATION_CREDENTIALS must be defined pointing to a file defining the credentials. See https://developers.google.com/accounts/docs/application-default-credentials for more information.
正如您在代码中看到的那样,我尝试GOOGLE_APPLICATION_CREDENTIALS
根据错误中的链接设置。但是,错误仍然存在。有人知道这个问题是什么吗?
先感谢您。
首先-感谢您的代码-该代码非常有用。我还建议您直接在代码中添加设置环境变量-而不是为您工作的每个环境都设置它。您可以使用以下代码:
import os
os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "path_to_your_.json_credential_file"
在需要不同凭据的不同项目之间进行切换时,我发现这很有用。
为Jenkins设置HTTPS的推荐方法是什么? 在Jenkins本身中设置HTTPS 使用Apache作为HTTPS设置的代理 我们有一个VM,其中Jenkins是唯一的应用程序。
我正在使用PushBots向我的Android应用发送推送通知。通过有效负载,我可以设置largeIcon位图和更改标题等,但我不确定如何更改状态栏中出现的通知图标(或smallIcon)。 目前,在Android5.0+上,它只是一个白色的方块,而在这个方块下面,它使用的是发射器图标。 但是,由于我使用的是pushbots,实际上我没有任何使用通知构造函数的通知代码。我在主要活动中所做的就是初始
我正在尝试从Java/Spring软件发送电子邮件。我正在使用spring框架的JavaMailSender。如何将本地计算机配置为JavaMailSender的smtp主机?我可以通过以下命令发送电子邮件: 然而,我怎样才能写我的邮件。支持上述命令的属性? 这是我的javaMailSender bean: 这是mail.properties文件:
问题内容: 所以我决定今天尝试Android Studio的Beta,但它拒绝在我的32位JRE上运行。我可以下载64位JRE,但出于各种原因(我当前的32位Eclipse IDE,Processing IDE和Minecraft不喜欢我的经验),我不希望它成为我的默认JRE,我认为一直切换java_home目录会很麻烦。 那么,intelliJ是否有某种方法可以像在其ini中的eclipse一样
问题内容: 我正在研究RoR,并将此虚拟机设置为“部署” RoR,并且陷入了Node.js的安装过程。 我正在使用Ubuntu 12.04,并且遵循了本指南的这一步骤: http://railsapps.github.com/installing- rails.html 从Rails 3.1开始,在Ubuntu Linux上进行开发需要JavaScript运行时(Mac OS X或Windows则
When running an Express app behind a proxy, set (by using app.set()) the application variable trust proxy to one of the values listed in the following table. Although the app will not fail to run if t