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 相关文章推荐
详解Django框架中用context来解析模板的方法
Jul 20 Python
Python极简代码实现杨辉三角示例代码
Nov 15 Python
Python使用QRCode模块生成二维码实例详解
Jun 14 Python
解决python3在anaconda下安装caffe失败的问题
Jun 15 Python
python3+dlib实现人脸识别和情绪分析
Apr 21 Python
python读取文本绘制动态速度曲线
Jun 21 Python
python 画二维、三维点之间的线段实现方法
Jul 07 Python
如何安装2019Pycharm最新版本(详细教程)
Sep 26 Python
详解Django配置优化方法
Nov 18 Python
Django中文件上传和文件访问微项目的方法
Apr 27 Python
如何利用Python识别图片中的文字
May 31 Python
基于Python的接口自动化unittest测试框架和ddt数据驱动详解
Jan 27 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调用三种数据库的方法(3)
2006/10/09 PHP
php include和require的区别深入解析
2013/06/17 PHP
两个SUBMIT按钮,如何区分处理
2006/08/22 Javascript
JavaScript为对象原型prototype添加属性的两种方式
2010/08/01 Javascript
什么是DOM(Document Object Model)文档对象模型
2012/03/05 Javascript
jQuery用unbind方法去掉hover事件及其他方法介绍
2013/03/18 Javascript
小米公司JavaScript面试题
2014/12/29 Javascript
Ext JS 实现建议词模糊动态搜索功能
2017/05/13 Javascript
jQuery实现带右侧索引功能的通讯录示例【附源码下载】
2018/04/17 jQuery
vue移动端html5页面根据屏幕适配的四种解决方法
2018/10/19 Javascript
浅谈在不使用ssr的情况下解决Vue单页面SEO问题(2)
2018/11/08 Javascript
js字符串处理之绝妙的代码
2019/04/05 Javascript
layui动态加载多表头的实例
2019/09/05 Javascript
Vue2.4+新增属性.sync、$attrs、$listeners的具体使用
2020/03/08 Javascript
JavaScript设计模式--桥梁模式引入操作实例分析
2020/05/23 Javascript
[49:54]Ti4 循环赛第三日 LGD vs Titan
2014/07/12 DOTA
Web服务器框架 Tornado简介
2014/07/16 Python
在Docker上部署Python的Flask框架的教程
2015/04/08 Python
详解python调度框架APScheduler使用
2017/03/28 Python
python获取外网IP并发邮件的实现方法
2017/10/01 Python
Python爬虫工程师面试问题总结
2018/03/22 Python
python读取中文txt文本的方法
2018/04/12 Python
python 判断字符串中是否含有汉字或非汉字的实例
2019/07/15 Python
解决Python对齐文本字符串问题
2019/08/28 Python
pytorch三层全连接层实现手写字母识别方式
2020/01/14 Python
python不使用for计算两组、多个矩形两两间的iou方式
2020/01/18 Python
css3实现3D文本悬停改变效果的示例代码
2019/01/16 HTML / CSS
使用Canvas操作像素的方法
2018/06/14 HTML / CSS
英国太阳镜品牌:Taylor Morris Eyewear
2018/04/18 全球购物
韩国保养品、日本药妆购物网:小三美日
2018/12/30 全球购物
党的群众路线教育学习材料
2014/05/12 职场文书
学雷锋活动倡议书
2014/08/30 职场文书
论群众路线学习心得体会
2014/10/31 职场文书
Python List remove()实例用法详解
2021/08/02 Python
Python获取字典中某个key的value
2022/04/13 Python
苹果发布了MagSafe固件更新,可以不外接电源实现最高7.5W充电
2022/04/21 数码科技