我使用pymongo将数据插入文档:
client = MongoClient()
db = client['comment_data2']
collection_data = db['comments']
collection_data.insert_many(data_comment)
每个数据我都有一个“ postid”来区分,例如:
comment1 = {
'commentParentId': parent_content.text,
'parentId': parent_ID,
'posted': child_time.text,
'postID':child_ID,
'author':
{
'name': child_name.text
},
'content': child_content.text
}
我的代码运行了2次以上,并且看到重复的数据。我想在运行代码时将每个 postID 插入1次。我正在处理学习pymongo,所以我对解决方案一无所知。 我在StackOverFlow的另一篇文章中找到了解决方案:
get_db().users.update(
{'_id':ObjectId(session['user_id'])},
{
'$addToSet':{
'hme':ObjectId(id)
}
},
upsert=True
)
但是我不知道这是什么意思。
来源:https://stackoverflow.com/questions/31043412/insert-not-duplicate-data-with-pymongo-in-mongodb
UPDATE1 :
我尝试使用collection_data.update_many(data_comment, upsert=True)
,但出现错误:update_many() missing 1 required positional argument: 'update'