Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python中从firebase获取事件数据?_Python_Firebase_Api_Google Bigquery - Fatal编程技术网

如何在python中从firebase获取事件数据?

如何在python中从firebase获取事件数据?,python,firebase,api,google-bigquery,Python,Firebase,Api,Google Bigquery,我在Firebase Analytics部分中定义了一些事件,如下图所示: 问题是我不知道如何通过API或使用python包从Firebase导出这些事件的数据 我还发现了GoogleCloudBigQuery包,在我请求数据集和表时,它返回null 代码如下: from google.cloud import bigquery from datetime import datetime, timedelta from decouple import Config GOOGLE_APPLICA

我在Firebase Analytics部分中定义了一些事件,如下图所示:

问题是我不知道如何通过API或使用python包从Firebase导出这些事件的数据

我还发现了GoogleCloudBigQuery包,在我请求数据集和表时,它返回null

代码如下:

from google.cloud import bigquery
from datetime import datetime, timedelta
from decouple import Config

GOOGLE_APPLICATION_CREDENTIALS = Config("GOOGLE_APPLICATION_CREDENTIALS")
client = bigquery.Client()
print(client.project)

datasets = list(client.list_datasets())
print(datasets) # it prints []
更清楚地说,我要做的是在数据库上执行查询,但我没有发现任何有用的链接

table_name = 'events_' + two_days_ago
query = """
    SELECT * 
    FROM {}
""".format(table_name)

print(client.query(query).result())
google.api_core.exceptions.BadRequest:400表名事件_20210507缺少数据集,但请求中未设置默认数据集

是否有任何方法可以访问数据集和表。 我也遵循了[本教程],但仍然没有数据集和问题存在

我怎样才能消除这种错误信息?有什么想法吗?

将Firebase链接到BigQuery

为了使用Firebase中的BigQuery执行查询,有必要将它们链接起来

链接过程在以下步骤后完成:

转到并选择现有项目

从仪表板中选择项目设置

选择集成选项卡并确保启用了BigQuery。 有关更多详细信息和配置BigQuery API设置,您可以单击上图中显示的管理。 解决问题

google.api_core.exceptions.BadRequest:400表名事件_20210507缺少数据集,但请求中未设置默认数据集

此错误是由于错误的查询造成的。如上所述,问题查询如下:

query = """
    SELECT * 
    FROM {}
""".format(table_name)
必须将其更改为以下格式:

query = """
    SELECT *
    FROM {0}.{1}.{2}
    WHERE event_name="{3}";
""".format(project_name, dataset_id, table_name, event_name)
注1:更多细节你可以按照

第2页如果您面临访问问题,您可以从获取JSON凭据