Pymongo
pip install pymongo
Python package to manage interaction with mongoldb
Three levels: client, db, and collection
from pymongo import MongoClient
client = MongoClient('mongodb://localhost:27017/')
db = client.test_database
posts = db.test_collection
post_id = posts.insert_one(post).inserted_id
Connecting to Mongo Atlas
To make up for their shitty documentation, their stupid mongodb+srv://
... requires pymongo 3.5+ and openssl version
must return 1.1 or more. And you must use the following extra code
import ssl
client = pymongo.MongoClient('[atlas...uri]', ssl=True, ssl_cert_reqs=ssl.CERT_NONE)
QUERYING
Returns a cursor which is iterable, use .count to get the number in the cursor for empty checking
db.student.find({}, {roll:1, _id:0}) #Projection: find all students and return their roll and not their id(id returned by default
dbClasses.find({"location": { '$regex': '.*' + building + '.*'}, "day": WEEKDAYS[weekday]})
Inserting
post_id = posts.insert_one(post).inserted_id
post is a dict
"_id", is automatically added if the document doesn’t already contain an "_id" key
use insert_many to insert list of dicts
-
DELETING
dbClasses.remove({"time": "scheduled"})
Last updated