python - 从 Cloud Firestore 查询数据 - Python
问题描述
我有一个查询,用于从 cloud firestore 获取数据。但它引发了一个关键错误。不知道出了什么问题。下面的代码。
import firebase_admin
from firebase_admin import credentials
from firebase_admin import firestore
import pandas as pd
import sys
import os
import fileinput
# Use the application default credentials
cred = credentials.Certificate('creddatabase.json')
firebase_admin.initialize_app(cred)
db = firestore.client()
docs = db.collection(u'testcollection').stream()
users_ref = db.collection(u'testcollection')
docs = users_ref.stream()
array = []
is_header_printed = False
rows_keys = None
out_file = open("testcollection.csv","w")
for doc in docs:
print(doc.id)
row_items = doc.to_dict()
print(doc)
if(is_header_printed == False):
rows_keys = list(row_items.keys())
rows_keys.sort(reverse=False)
#loop through every key and print the header row
for key in rows_keys:
print(key)
out_file.write(str(key.replace(",","_"))+",")
out_file.write("\n")
is_header_printed = True
for key in rows_keys:
print(key)
out_file.write(str(row_items[key]).replace(',',' ')+',')
out_file.write("\n")
print(str(doc.to_dict()['StartDate'].year) + '/' + str(doc.to_dict()['StartDate'].month) + '/' + str(doc.to_dict()['StartDate'].day))
out_file.close()
我收藏的文档如下所示:
Comments: ""
Objectived: "test"
Media: "test media"
notes: "test notest"
Zone A: 0
Zone B: 0
错误信息:
Traceback (most recent call last):
File "/Users/DataScience/Firebasequery/Firebase_query_for_psolzsol_jnhibtionsingalling.py", line 49, in <module>
out_file.write(str(row_items[key]).replace(',',' ')+',')
KeyError: 'Media'
解决方案
推荐阅读
- javascript - Chokidar 在控制台上运行,但在通过“npm run”调用时不起作用
- drupal - 在 Drupal 8 中使用 Google Tag Manager Module 而不是标准的 Google Tag Manager 有什么优势?
- xpath - XPath NodeList 值为空
- javascript - 平面列表在 React-Native 中不显示任何数据
- postgresql - hasura中的递归/嵌套/树数据获取
- c++ - 是否可以将 Visual Studio C++ 项目链接到 C++ 中的 GUI 项目以避免代码复制?
- flutter - 如何识别蜂窝或移动网络信号强度
- python - 'pay' 属性无法识别
- python-3.x - 无法在 Google Cloud Platform (Dataflow) 上运行 TensorFlow 数据验证
- c# - Selenium 驱动程序在用作 lambda 函数的闭包时不起作用