Python访问MongoDB,并且转换成Dataframe的方法


Posted in Python onOctober 15, 2018

如下所示:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2018/7/13 11:10
# @Author : baoshan
# @Site : 
# @File : pandans_pymongo.py
# @Software: PyCharm Community Edition

import pymongo
import pandas as pd


def _connect_mongo(host, port, username, password, db):
 """ A util for making a connection to mongo. """
 if username and password:
  mongo_uri = "mongodb://%s:%s@%s:%s/%s" % (username, password, host, port, db)
  conn = pymongo.MongoClient(mongo_uri)
 else:
  conn = pymongo.MongoClient(host, port)

 return conn[db]


def read_mongo(db, collection, query={}, host='test43', port=27017, username=None, password=None, no_id=True):
 """ Read from Mongo and Store into DataFrame. """

 # Connect to MongoDB
 db = _connect_mongo(host=host, port=port, username=username, password=password, db=db)

 # Make a query to the specific DB and Collection
 cursor = db[collection].find(query).limit(10)

 # Expand the cursor and construct the DataFrame
 df = pd.DataFrame(list(cursor))
 df.to_csv("abc.csv", encoding="utf_8_sig") # 处理中文乱码问题

 if no_id:
  del df['_id']

 return df


read_mongo(db='service', collection='trace_log_regular', query={}, host='xxx', port=27017, username="xxx", password="xxx")

小结:

1. 解决了pymongo访问MongoDB的问题

2. 解决了查询的数据转成dataframe的问题

3. 解决了dataframe写入到csv的问题

4. 解决了中文乱码问题。

以上这篇Python访问MongoDB,并且转换成Dataframe的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中的Numeric包和Numarray包使用教程
Apr 13 Python
Python各类图像库的图片读写方式总结(推荐)
Feb 23 Python
Windows下安装Django框架的方法简明教程
Mar 28 Python
Django shell调试models输出的SQL语句方法
Aug 29 Python
python网络编程 使用UDP、TCP协议收发信息详解
Aug 29 Python
python3常用的数据清洗方法(小结)
Oct 31 Python
Django框架模板用法入门教程
Nov 04 Python
Django框架models使用group by详解
Mar 11 Python
Python decorator拦截器代码实例解析
Apr 04 Python
Python matplotlib绘制图形实例(包括点,曲线,注释和箭头)
Apr 17 Python
python sleep和wait对比总结
Feb 03 Python
Pycharm创建python文件自动添加日期作者等信息(步骤详解)
Feb 03 Python
Django框架的中的setting.py文件说明详解
Oct 15 #Python
python得到电脑的开机时间方法
Oct 15 #Python
python得到单词模式的示例
Oct 15 #Python
详解python如何在django中为用户模型添加自定义权限
Oct 15 #Python
Python 实现某个功能每隔一段时间被执行一次的功能方法
Oct 14 #Python
Python 实现异步调用函数的示例讲解
Oct 14 #Python
python 异或加密字符串的实例
Oct 14 #Python
You might like
PHP register_shutdown_function函数的深入解析
2013/06/03 PHP
PHP实现算式验证码和汉字验证码实例
2015/03/09 PHP
php+ajax注册实时验证功能
2016/07/20 PHP
PHP排序算法之基数排序(Radix Sort)实例详解
2018/04/21 PHP
javascript 事件查询综合 推荐收藏
2010/03/10 Javascript
JavaScript 面向对象的之私有成员和公开成员
2010/05/04 Javascript
javascript 函数声明与函数表达式的区别介绍
2013/10/05 Javascript
JavaScript极简入门教程(三):数组
2014/10/25 Javascript
浅谈jquery事件处理
2015/04/24 Javascript
jQuery实现的五子棋游戏实例
2015/06/13 Javascript
js动态获取子复选项并设计全选及提交的实现方法
2016/06/24 Javascript
JS 实现Base64编码与解码实例详解
2016/11/07 Javascript
jQuery Plupload上传插件的使用
2017/04/19 jQuery
JS获取数组中出现次数最多及第二多元素的方法
2017/10/27 Javascript
Node.js原生api搭建web服务器的方法步骤
2019/02/15 Javascript
js canvas实现5张图片合成一张图片
2019/07/15 Javascript
原生JavaScript实现的无缝滚动功能详解
2020/01/17 Javascript
vue实现购物车案例
2020/05/30 Javascript
[01:38]DOTA2 2015国际邀请赛中国区预选赛 Showopen
2015/06/01 DOTA
python 如何快速找出两个电子表中数据的差异
2017/05/26 Python
Python格式化日期时间操作示例
2018/06/28 Python
python Flask 装饰器顺序问题解决
2018/08/08 Python
pyQT5 实现窗体之间传值的示例
2019/06/20 Python
django项目环境搭建及在虚拟机本地创建django项目的教程
2019/08/02 Python
基于Python3.6中的OpenCV实现图片色彩空间的转换
2020/02/03 Python
python线程池如何使用
2020/05/28 Python
opencv+pyQt5实现图片阈值编辑器/寻色块阈值利器
2020/11/13 Python
详解css3中 text-fill-color属性
2019/07/08 HTML / CSS
Timberland俄罗斯官方网上商店:全球领先的户外品牌
2020/03/15 全球购物
Can a struct inherit from another struct? (结构体能继承结构体吗)
2016/09/25 面试题
商务日语毕业生自荐信
2013/11/23 职场文书
销售实习自我鉴定
2013/12/07 职场文书
电子商务专业求职信
2014/03/08 职场文书
幼师大班个人总结
2015/02/13 职场文书
法人代表证明书范本
2015/06/18 职场文书
重阳节简报
2015/07/20 职场文书