无法将 Scrapy 管道连接到 Firestore 数据库

Trouble Connecting Scrapy Pipeline to Firestore DB

我是一个 Python NOOB 尝试使用 Python 将 Scrapy 结果写入 Firebase Firestore 3. Spider 结果正确地记录到控制台,但我似乎无法写入我的Firestore 数据库。非常感谢任何帮助。

错误消息:

db = firestore.client()
AttributeError: module 'google.cloud.firestore' has no attribute 'client'

管道文件:

import firebase_admin
from firebase_admin import credentials, firestore
from google.cloud import firestore
    
    
    class DataProcessPipeline:
    
        def __init__(self):
            cred = credentials.Certificate('./serviceAccountKey.json')
            firebase_admin.initialize_app(cred,
                {
                  'databaseURL': 'https://xxxxxxxxxxx.firebaseio.com'
                }
            )
    
        def process_item(self, item, spider):
            db = firestore.client()
            doc_ref = db.collection('f1_articles')
            doc_ref.add(item.to_dict())
            # doc_ref.insert(dict(item))
            return item

你打错了 Client() 而不是 client() :

db = firestore.Client()

来自documentation

from google.cloud import firestore

# Add a new document
db = firestore.Client()
doc_ref = db.collection(u'users').document(u'alovelace')
doc_ref.set({
    u'first': u'Ada',
    u'last': u'Lovelace',
    u'born': 1815
})

# Then query for documents
users_ref = db.collection(u'users')

for doc in users_ref.stream():
    print(u'{} => {}'.format(doc.id, doc.to_dict()))