Antes de comenzar, asegúrate de tener lo siguiente:
1. Python instalado en tu máquina. Puedes descargarlo desde python.org.
2. MongoDB instalado y en ejecución. Puedes descargar MongoDB desde mongodb.com.
3. pymongo
instalado. Puedes instalarlo usando pip:
pip install pymongo
Si aún no has iniciado MongoDB, abre una terminal y ejecuta el siguiente comando para iniciar el servidor de MongoDB:
mongod
Esto iniciará el servidor de MongoDB en tu máquina local en el puerto 27017 por defecto.
Una vez que MongoDB está en funcionamiento, podemos proceder a conectarnos a la base de datos desde Python. Abre tu editor de código favorito y sigue estos pasos:
pymongo
y Conectarse a MongoDB
Crea un archivo Python (por ejemplo, mongodb_connection.py
) e importa pymongo
. Luego, usa MongoClient
para conectarte a MongoDB:
from pymongo import MongoClient
# Conectarse al servidor de MongoDB
client = MongoClient('localhost', 27017)
# Seleccionar la base de datos
db = client['mi_base_de_datos']
print("Conexión exitosa a MongoDB")
Para asegurarte de que la conexión se ha establecido correctamente, puedes listar las bases de datos disponibles:
# Listar las bases de datos
print(client.list_database_names())
Ahora que estamos conectados a MongoDB, vamos a realizar algunas operaciones básicas como insertar, leer, actualizar y eliminar documentos.
Vamos a insertar un documento en una colección llamada usuarios
:
# Seleccionar la colección
coleccion = db['usuarios']
# Crear un documento
usuario = {
"nombre": "Juan",
"edad": 30,
"correo": "juan@example.com"
}
# Insertar el documento
resultado = coleccion.insert_one(usuario)
print("Documento insertado con ID:", resultado.inserted_id)
Para leer documentos de la colección usuarios
, utilizamos el método find
:
# Leer documentos
for usuario in coleccion.find():
print(usuario)
Para actualizar un documento, utilizamos el método update_one
o update_many
:
# Actualizar un documento
criterio = {"nombre": "Juan"}
nuevo_valor = {"$set": {"edad": 31}}
resultado = coleccion.update_one(criterio, nuevo_valor)
print("Documentos actualizados:", resultado.modified_count)
Para eliminar documentos, usamos delete_one
o delete_many
:
# Eliminar un documento
criterio = {"nombre": "Juan"}
resultado = coleccion.delete_one(criterio)
print("Documentos eliminados:", resultado.deleted_count)
Es importante manejar posibles errores durante la conexión y las operaciones en la base de datos. Puedes usar bloques try-except
para este propósito:
try:
# Conexión a MongoDB
client = MongoClient('localhost', 27017)
db = client['mi_base_de_datos']
print("Conexión exitosa a MongoDB")
# Operaciones en MongoDB
coleccion = db['usuarios']
usuario = {
"nombre": "Pedro",
"edad": 25,
"correo": "pedro@example.com"
}
coleccion.insert_one(usuario)
except Exception as e:
print("Error:", e)
Conectar MongoDB a Python usando pymongo
es un proceso sencillo y directo. Este tutorial te ha mostrado cómo conectarte a MongoDB, así como realizar operaciones básicas de inserción, lectura, actualización y eliminación de documentos. Ahora puedes aprovechar la potencia de MongoDB en tus proyectos de Python.
Para más información, consulta la documentación oficial de pymongo.
¡Feliz programación!
Jorge García
Fullstack developer