类型错误:文档必须是非空列表

问题描述 投票:0回答:4

我正在用 2.7 Python 语言使用 Twitter API 和 MongoDB 编写一个程序。

我得到一个时间线并将其放入字典中,我想将其存储在 MongoDB 数据库中。为此,我有下一个代码:

def saveOnBD(self, dic):
    client = MongoClient("xxxx", "port")
    db = client.DB_Tweets_User_Date
    collection = db.tweets
    collection.insert_many(dic)

我正在调试,

dic
它不是空的,但我收到下一个错误:

TypeError: documents must be a non-empty list

我该如何修复它?

python mongodb pymongo
4个回答
1
投票

我尝试了很多选项,但我通过更改发布方法解决了这个问题。

代替:

collection.insert_many(dic)

我用的是这个:

collection.insert_one(dic)

我想,当我尝试仅发布一个变量(dic)时,“insert_many()”适用于许多变量,这些变量会返回错误。这个改变解决了我的问题


1
投票

必须将文档列表传递给 insert_many 方法

例如:

collection.insert_many([dic])

0
投票

您可以在运行批量输入功能之前输入一个条目或使用 insert()


0
投票

如果列表大小为零,请勿使用 insertmany

© www.soinside.com 2019 - 2024. All rights reserved.