Tendremos que saber manejar un cursor en Pymongo a la hora de realizar consultas de documentos sobre una base de datos en MongoDB en Python. Un cursor en Pymongo no deja de ser una lista que alberga los documentos resultado de realizar la consulta.
En este ejemplo vamos a realizar una consulta sobre una base de datos MongoDB mediante Pymongo para poder manejar, recorrer e imprimir los resultados del cursor.
Lo primero será importar el objeto MongoClient
que es el que nos permitirá conectarnos con MongoDB desde Python.
from pymongo import MongoClient
Con el objeto MongoClient
vamos a conectarnos al servidor, elegir una base de datos (users) y una colección (listado).
client = MongoClient()
db = client.users
listado = db.listado
Ahora vamos ejecutar la consulta mediante el método .find()
usuarios = listado.find()
Que sería lo mismo que haber escrito:
usuarios = db.listado.find()
Mucho más parecido a la sintaxis de MongoDB.
Al final en la variable usuarios tenemos el cursor con todos los documentos resultado de la consulta. Vamos a utilizar una estructura for in
para recorrer los documentos y volcarlos en pantalla.
for usuario in usuarios:
print usuario
En pantalla obtendremos todos los documentos JSON que nos haya devuelto la consulta.
De esta forma tan sencilla hemos creado un cursor en Pymongo con el resultado de una consulta a MongoDB.