Pymongo
Um MongoDB zu nutzen kann pymongo verwendet werden.
pip install pymongo
Nachdem man eine Verbindung zum MongoDB Server hergestellt hat, selektiert man eine Datenbank.
Falls die Datenbank noch nicht existiert wird sie automatisch angelegt.
from pymongo import MongoClient
client = MongoClient('mongodb://localhost:27017/')
db = client['python']
Die Collections einer Datenbank bekommt man dann nach dem gleichen Prinzip.
db.collection_names() # list with all collection names
user = db['user']
user = client['python']['user']
Um mit Dokumenten zu arbeiten werden dann entsprechende Methoden genutzt.
user.insert_one({'name': 'User'})
print(list(user.find_one({'name': 'User'})))
print(list(user.find()))
print(list(user.find().sort('name', pymongo.DESCENDING)))
print(list(user.find().limit(3).skip(2)))
print(user.estimated_document_count())
user.delete_one({'name': 'User'})
Um mit ObjectId
zu arbeiten wird bson
benötigt.
from bson.objectid import ObjectId
from datetime import datetime
pipeline = [
{ '$unwind': '$attrs.tags' },
{ '$match': { 'attrs.tags': 'C', 'attrs.validated': True, 'age': { '$lt': 30 } } }
]
for i in list(user.aggregate(pipeline)):
user.update_one({'_id': ObjectId(i['_id'])}, {'$set': {'attrs.validated': False}})