在windows 10下安排python脚本将数据加载到BigQuery
是否有一种方法可以安排python脚本将数据加载到Bigquery,而不必为每次运行复制从google帐户链接生成的身份验证代码在windows 10下安排python脚本将数据加载到BigQuery,python,windows,oauth,google-bigquery,Python,Windows,Oauth,Google Bigquery,是否有一种方法可以安排python脚本将数据加载到Bigquery,而不必为每次运行复制从google帐户链接生成的身份验证代码 我目前正在使用windows任务计划程序来实现这一点 是的,有。你必须使用。创建一个后,将其作为JSON文件下载到本地,并在Python脚本中使用,如: from google.cloud import bigquery as bq client = bq.Client.from_service_account_json('path/to/credentials.j
我目前正在使用windows任务计划程序来实现这一点 是的,有。你必须使用。创建一个后,将其作为JSON文件下载到本地,并在Python脚本中使用,如:
from google.cloud import bigquery as bq
client = bq.Client.from_service_account_json('path/to/credentials.json')
这将使您所需的与BigQuery的所有连接以及身份验证都已为您自动处理。您可以通过以下链接创建凭据:cloud.google.com/storage/docs/authentication#service_accounts 在python脚本中,您可以使用
private_key
参数将json文件路径直接传递给用于从BQ读/写的函数
pandas\u gbq.read\u gbq(查询,项目id=myprojectid,…,私钥='jsonfilepath',方言='legacy')
pandas.to_gbq(数据帧、目的地表、项目id、chunksize=10000,…,private\u key='jsonfilepath')
然后,您将任务安排为运行python脚本,就像您通常使用windows任务调度器所做的那样。看起来您的消息是在postingI通过此链接创建凭据之前被剪切的。我可以使用cmd将数据加载到BigQuery,但是当使用任务调度器和相同的命令时,我的代码永远不会结束。我正在为4个计算机节点构建一个机器学习分类器。我不太明白。您是否可以使用服务帐户连接到gcp?是的,我可以连接,而无需输入oauth代码,并且如果我从命令提示符(cmd终端)运行脚本,我可以从GBQ读取和写入日期。但是,当我用“任务调度器”调度同一个任务时,代码永远不会结束,它会在“任务调度器”上显示“正在运行”。在cmd上仅持续20分钟。