Python JSON Convert PyMongo Cursor to JSON

Python JSON Convert PyMongo Cursor to JSON

Convert PyMongo Cursor to JSON

Prerequisites: MongoDB Python Basics

This article is about converting the PyMongo Cursor to JSON. Functions like find() and find_one() returns the Cursor instance.

Let%u2019s begin:

  1. Importing Required Modules: Import the required module using the command:
    from pymongo import MongoClient
    from bson.json_util import dumps

  2. Creating a Connection: Now we had already imported the module, its time to establish a connection to the MongoDB server, presumably which is running on localhost (host name) at port 27017 (port number).
    client = MongoClient(%u2018localhost%u2019, 27017)
  3. Accessing the Database: Since the connection to the MongoDB server is established. We can now create or use the existing database.
    mydatabase = client.name_of_the_database
  4. Accessing the Collection: We now select the collection from the database using the following syntax:
    collection_name = mydatabase.name_of_collection
  5. Getting the documents: Getting all the documents from the collection using find() method. It returns the instance of the Cursor.
    cursor = collection_name.find()
  6. Converting the Cursor to JSON: Converting the Cursor to the JSON.
    First, we will convert the Cursor to the list of dictionary.
    list_cur = list(cursor)

    Now, converting the list_cur to the JSON using the method dumps() from bson.json_util

    json_data = dumps(list_cur)

         You can now save it to the file or can use it in the program using loads() function

Python code:

# 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: