Python读取MongoDB的JSON字典和列表对象转为字符串

使用Python的pymongo库连接和读取Mongo的集合(表),读取的每个结果为一个JSON对象。下面实例将解析结果转化为pandas的DataFrame类型,一级属性作为列名(也可展开子对象扩展更多列)。如果属性值为字段和列表,即JSON内嵌对象,可用如下方法解析为JSON字符串:

python 复制代码
import pymongo as pm
import pandas as pd


mongo_addr = 'mongodb://user_name:password@mongo_server_ip:27017'

client = pm.MongoClient(mongo_addr)  # 连接MongoDB数据库客户端对象
db = client.get_database(dbn)
coll = db[coll_name]
cond = {'status': {'$gte': 1}}
cursor = coll.find(cond)
batch_list = []
# item为字典对象
for item in cursor:
    for key, value in item.items():
        # 对一级属性值判断,若为字典或列表转为JSON字符串
        if isinstance(value, (dict, list)):
            item[key] = json.dumps(value, ensure_ascii=False)
    batch_list.append(item)
data_frame = pd.DataFrame(batch_list)
cursor.close()
client.close()
相关推荐
阿尔的代码屋2 小时前
[大模型实战 07] 基于 LlamaIndex ReAct 框架手搓全自动博客监控 Agent
人工智能·python
AI探索者19 小时前
LangGraph StateGraph 实战:状态机聊天机器人构建指南
python
AI探索者19 小时前
LangGraph 入门:构建带记忆功能的天气查询 Agent
python
FishCoderh21 小时前
Python自动化办公实战:批量重命名文件,告别手动操作
python
躺平大鹅21 小时前
Python函数入门详解(定义+调用+参数)
python
曲幽1 天前
我用FastAPI接ollama大模型,差点被asyncio整崩溃(附对话窗口实战)
python·fastapi·web·async·httpx·asyncio·ollama
两万五千个小时1 天前
落地实现 Anthropic Multi-Agent Research System
人工智能·python·架构
哈里谢顿1 天前
Python 高并发服务限流终极方案:从原理到生产落地(2026 实战指南)
python
用户8356290780512 天前
无需 Office:Python 批量转换 PPT 为图片
后端·python
markfeng82 天前
Python+Django+H5+MySQL项目搭建
python·django