Editado 3 hace días por ExtremeHow Equipo Editorial
ConexiónMongoDBPythonAplicaciónLinuxBase de datosDesarrolloIntegraciónConfiguraciónProgramación
Traducción actualizada 2 Hace unas semanas
MongoDB es una base de datos NoSQL popular que permite a los desarrolladores almacenar y recuperar datos fácilmente. Es conocida por su flexibilidad, escalabilidad y alto rendimiento. Si estás desarrollando aplicaciones Python en un sistema Linux, es posible que necesites conectar tu aplicación a una base de datos MongoDB. Esta guía te dará instrucciones paso a paso para lograr esta tarea.
Antes de continuar, asegúrate de tener lo siguiente instalado y configurado en tu máquina Linux:
python3 --version
o python --version
. Si no está instalado, puedes instalarlo usando el administrador de paquetes de tu distribución.sudo systemctl status mongod
o sudo systemctl start mongod
.pip3 --version
o pip --version
.El primer paso es instalar la biblioteca PyMongo. Esta biblioteca contiene herramientas para trabajar con MongoDB desde Python. Para instalar PyMongo, abre el terminal y ejecuta:
pip3 install pymongo
Alternativamente, puedes usar:
pip install pymongo
Importa PyMongo en el shell de Python para asegurarte de que la instalación fue exitosa y no hay errores.
python3 -c "import pymongo"
Si no hay errores, PyMongo está instalado correctamente.
Asegúrate de que MongoDB esté ejecutándose en tu máquina local. Si instalaste MongoDB usando tu administrador de paquetes, puede que ya esté funcionando como un servicio. Usa el siguiente comando para verificar y arrancarlo si es necesario:
sudo systemctl status mongod
Si no está funcionando, arráncalo de la siguiente manera:
sudo systemctl start mongod
Este comando iniciará el servidor de base de datos, haciéndolo listo para aceptar conexiones.
Antes de conectar, crea al menos una base de datos y una colección. Puedes lograr esto en la shell de MongoDB o directamente a través de un script de Python.
Accede a tu shell de MongoDB:
mongo
Ahora, crea una nueva base de datos llamada “mydatabase”:
use mydatabase
Crea una colección llamada “mycollection”:
db.createCollection("mycollection")
Tu base de datos y colección están listas para la entrada de datos.
Ahora, escribamos un script de Python para conectarnos al servidor MongoDB y realizar operaciones básicas.
Primero, conectémonos a nuestro servidor MongoDB usando PyMongo:
import pymongo
# Establece una conexión al servidor MongoDB
client = pymongo.MongoClient("mongodb://localhost:27017/")
# Accede a la base de datos
db = client["mydatabase"]
# Accede a la colección
collection = db["mycollection"]
Este código se conecta a MongoDB en tu localhost en el puerto por defecto 27017. Accede a una base de datos llamada “mydatabase” y a una colección llamada “mycollection”.
Para insertar un documento en tu colección, usa el método insert_one
:
# Define un documento para insertar
my_document = {
"name": "John Doe",
"age": 29,
"city": "New York"
}
# Inserta el documento en la colección
collection.insert_one(my_document)
Esto insertará un único documento con los campos name
, age
y city
.
Para recuperar documentos de una colección, usa el método find
:
# Recupera todos los documentos de la colección
for doc in collection.find():
print(doc)
Este script imprimirá todos los documentos en “mycollection”. También puedes usar consultas para recuperar documentos específicos:
# Consulta para documentos donde el nombre es John Doe
query = { "name": "John Doe" }
# Recupera e imprime documentos que coinciden con la consulta
for doc in collection.find(query):
print(doc)
Para actualizar documentos, usa los métodos update_one
o update_many
. Aquí tienes un ejemplo:
# Define la consulta para seleccionar documentos
query = { "name": "John Doe" }
# Define los nuevos valores
new_values = { "$set": { "age": 30 } }
# Actualiza el(los) documento(s)
collection.update_one(query, new_values)
Este ejemplo actualiza la edad a 30 para documentos donde el nombre es John Doe.
Para eliminar documentos de una colección, usa los métodos delete_one
o delete_many
:
# Define la consulta para los documentos que se eliminarán
query = { "name": "John Doe" }
# Elimina el(los) documento(s) que coinciden con la consulta
collection.delete_one(query)
Esto elimina incluso un solo documento que contenga el nombre John Doe.
Ahora has aprendido cómo conectar una aplicación de Python a una base de datos MongoDB que se ejecuta en un sistema Linux utilizando la biblioteca PyMongo. La flexibilidad de MongoDB lo hace ideal para aplicaciones que requieren almacenamiento de datos escalable y eficiente. Con PyMongo, interactuar con MongoDB desde Python es sencillo e intuitivo. Hemos cubierto la instalación del software necesario, la creación de una simple base de datos y colección, y la realización de operaciones básicas de CRUD en Python. Puedes construir sobre esta base para crear aplicaciones más complejas y ricas en funciones que satisfagan tus necesidades de datos.
Si encuentras algo incorrecto en el contenido del artículo, puedes