使用python从mongodb中导出json和csv格式

您所在的位置:网站首页 mongodb数据导入导出脚本 使用python从mongodb中导出json和csv格式

使用python从mongodb中导出json和csv格式

#使用python从mongodb中导出json和csv格式| 来源: 网络整理| 查看: 265

1.导出json格式

# encoding:utf-8 import pymongo import json FILE = "E:\\test.json" MONGO_URL = 'mongodb://127.0.0.1:27017' MONGO_DB = 'Test' MONGO_COLLECTION = 'test' client = pymongo.MongoClient(MONGO_URL).MONGO_DB.MONGO_COLLECTION datas = client.find({}, {"_id": 0}) with open(FILE, 'a', encoding="utf-8") as f: item = {} for data in datas: # 选择要导出的字段 item['title'] = data['title'] item['text'] = data['text'].strip() # ensure_ascii默认为True,导出时中文会出现乱码,所以有中文时这里应设置为False f.write(json.dumps(item, ensure_ascii=False) + "\n")

2.导出csv格式:

# encoding:utf-8 import pymongo import csv import codecs FILE = "E:\\test.csv" MONGO_URL = 'mongodb://127.0.0.1:27017' MONGO_DB = 'Test' MONGO_COLLECTION = 'test' client = pymongo.MongoClient(MONGO_URL).MONGO_DB.MONGO_COLLECTION datas = client.find({}, {"_id": 0}) with codecs.open(FILE, 'a', encoding='utf-8') as csvfile: writer = csv.writer(csvfile) # 设置csv头行,选择要导出的字段 writer.writerow(["title", "text"]) for data in datas: writer.writerow([data['title'], data['text']])

写入csv时,我使用的是codecs.open而不是open,这是因为我使用open打开时报了错误:UnicodeEncodeError编码错误,

使用codecs可以自动转换格式编码。

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3