Prerrequisitos: Conceptos básicos de MongoDB Python
Este artículo trata sobre cómo convertir PyMongo Cursor a JSON. Funciones como find() y find_one() devuelven la instancia de Cursor.
Vamos a empezar:
- Importación de módulos requeridos: Importe el módulo requerido usando el comando:
from pymongo import MongoClient from bson.json_util import dumps
Si MongoDB ya no está instalado en su máquina, puede consultar la guía: Guía para instalar MongoDB con Python
- Creación de una conexión: ahora que ya habíamos importado el módulo, es hora de establecer una conexión con el servidor MongoDB, presumiblemente que se ejecuta en localhost (nombre de host) en el puerto 27017 (número de puerto).
client = MongoClient(‘localhost’, 27017)
- Acceso a la Base de Datos: Desde que se establece la conexión con el servidor MongoDB. Ahora podemos crear o usar la base de datos existente.
mydatabase = client.name_of_the_database
- Accediendo a la Colección: Ahora seleccionamos la colección de la base de datos usando la siguiente sintaxis:
collection_name = mydatabase.name_of_collection
- Obtener los documentos: obtener todos los documentos de la colección mediante el método find(). Devuelve la instancia del Cursor.
cursor = collection_name.find()
- Conversión del cursor a JSON: Conversión del cursor a JSON.
Primero, convertiremos el Cursor a la lista de diccionario.list_cur = list(cursor)
Ahora, convirtiendo list_cur a JSON usando el método dumps() de bson.json_util
json_data = dumps(list_cur)
Ahora puede guardarlo en el archivo o puede usarlo en el programa usando la función loads().
A continuación se muestra la implementación.
# Python Program for # demonstrating the # PyMongo Cursor to JSON # Importing required modules from pymongo import MongoClient from bson.json_util import dumps, loads # Connecting to MongoDB server # client = MongoClient('host_name', # 'port_number') client = MongoClient('localhost', 27017) # Connecting to the database named # GFG mydatabase = client.GFG # Accessing the collection named # gfg_collection mycollection = mydatabase.College # Now creating a Cursor instance # using find() function cursor = mycollection.find() # Converting cursor to the list # of dictionaries list_cur = list(cursor) # Converting to the JSON json_data = dumps(list_cur, indent = 2) # Writing data to file data.json with open('data.json', 'w') as file: file.write(json_data)
Producción:
Publicación traducida automáticamente
Artículo escrito por sukritinpal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA