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的Flask框架中SQLAlchemy使用时的乱码问题解决
Nov 07 Python
python 循环while和for in简单实例
Aug 16 Python
Python探索之实现一个简单的HTTP服务器
Oct 28 Python
Python 网络爬虫--关于简单的模拟登录实例讲解
Jun 01 Python
基于Python3.6+splinter实现自动抢火车票
Sep 25 Python
Python对接六大主流数据库(只需三步)
Jul 31 Python
pandas条件组合筛选和按范围筛选的示例代码
Aug 26 Python
用python求一重积分和二重积分的例子
Dec 06 Python
Python 文件数据读写的具体实现
Jan 24 Python
Django中FilePathField字段的用法
May 21 Python
python爬虫线程池案例详解(梨视频短视频爬取)
Feb 20 Python
python使用shell脚本创建kafka连接器
Apr 29 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中的switch语句的用法实例详解
2015/10/21 PHP
为你总结一些php系统类函数
2015/10/21 PHP
Laravel Memcached缓存驱动的配置与应用方法分析
2016/10/08 PHP
javascript Math.random()随机数函数
2009/11/04 Javascript
javascript 面向对象全新理练之原型继承
2009/12/03 Javascript
Javascript类库的顶层对象名用户体验分析
2010/10/24 Javascript
js 获取屏幕各种宽高的方法(浏览器兼容)
2013/05/15 Javascript
原生js实现淘宝首页点击按钮缓慢回到顶部效果
2014/04/06 Javascript
jQuery照片伸缩效果不影响其他元素的布局
2014/05/09 Javascript
js实现按钮控制图片360度翻转特效的方法
2015/02/17 Javascript
JavaScript监听文本框回车事件并过滤文本框空格的方法
2015/04/16 Javascript
JS代码防止SQL注入的方法(超简单)
2016/04/12 Javascript
NodeJS创建基础应用并应用模板引擎
2016/04/12 NodeJs
一种Javascript解释ajax返回的json的好方法(推荐)
2016/06/02 Javascript
JavaScript利用正则表达式替换字符串中的内容
2016/12/12 Javascript
bootstrap网格系统使用方法解析
2017/01/13 Javascript
node.js操作mysql简单实例
2017/05/25 Javascript
vue组件化中slot的基本使用方法
2019/05/01 Javascript
原生JS实现留言板
2020/03/26 Javascript
解决vue动态下拉菜单 有数据未反应的问题
2020/08/06 Javascript
js实现简单抽奖功能
2020/11/24 Javascript
js 实现碰撞检测的示例
2020/10/28 Javascript
[01:21:58]守擂赛DOTA2第一周决赛
2020/04/22 DOTA
python和shell变量互相传递的几种方法
2013/11/20 Python
python使用xauth方式登录饭否网然后发消息
2014/04/11 Python
python检测文件夹变化,并拷贝有更新的文件到对应目录的方法
2018/10/17 Python
python多线程下信号处理程序示例
2019/05/31 Python
python3通过subprocess模块调用脚本并和脚本交互的操作
2020/12/05 Python
味多美官网:蛋糕订购,100%使用天然奶油
2017/11/10 全球购物
加拿大户外探险购物网站:SAIL
2020/06/27 全球购物
《乌鸦和狐狸》教学反思
2014/02/08 职场文书
家长会演讲稿
2014/04/26 职场文书
2014年社区党建工作总结
2014/11/11 职场文书
收银员岗位职责
2015/02/03 职场文书
Python 解决空列表.append() 输出为None的问题
2021/05/23 Python
MySQL系列之四 SQL语法
2021/07/02 MySQL