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 相关文章推荐
在Linux系统上安装Python的Scrapy框架的教程
Jun 11 Python
python实现TF-IDF算法解析
Jan 02 Python
使用Python写一个小游戏
Apr 02 Python
python操作excel的方法(xlsxwriter包的使用)
Jun 11 Python
python爬取足球直播吧五大联赛积分榜
Jun 13 Python
Python3获取拉勾网招聘信息的方法实例
Apr 03 Python
PyQt5图形界面播放音乐的实例
Jun 17 Python
基于torch.where和布尔索引的速度比较
Jan 02 Python
python爬虫看看虎牙女主播中谁最“顶”步骤详解
Dec 01 Python
Python中相见恨晚的技巧
Apr 13 Python
Pytorch 中net.train 和 net.eval的使用说明
May 22 Python
使用pycharm运行flask应用程序的详细教程
Jun 07 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程序
2006/10/09 PHP
利用PHP动态生成VRML网页
2006/10/09 PHP
PHP的分页功能
2007/03/21 PHP
Laravel推荐使用的十个辅助函数
2019/05/10 PHP
PHP array_reverse() 函数原理及实例解析
2020/07/14 PHP
js局部刷新页面时间具体实现
2013/07/04 Javascript
js 剪切板的用法(clipboardData.setData)与js match函数介绍
2013/11/19 Javascript
jQuery队列操作方法实例
2014/06/11 Javascript
js中this用法实例详解
2015/05/05 Javascript
详解JavaScript时间格式化
2015/12/23 Javascript
Node.js+Express配置入门教程
2016/05/19 Javascript
JavaScript利用正则表达式替换字符串中的内容
2016/12/12 Javascript
AngularJS 的$timeout服务示例代码
2017/09/21 Javascript
javascript原型链学习记录之继承实现方式分析
2019/05/01 Javascript
Vue执行方法,方法获取data值,设置data值,方法传值操作
2020/08/05 Javascript
微信小程序自定义胶囊样式
2020/12/27 Javascript
JavaScript实现打字游戏
2021/02/19 Javascript
Python虚拟环境Virtualenv使用教程
2015/05/18 Python
Python操作串口的方法
2015/06/17 Python
浅谈Python2.6和Python3.0中八进制数字表示的区别
2017/04/28 Python
python实现人工智能Ai抠图功能
2019/09/05 Python
python文件排序的方法总结
2020/09/13 Python
地球上最先进的胡子和头发修剪器:Bevel
2018/01/23 全球购物
印度服装购物网站:Limeroad
2018/09/26 全球购物
字符串str除首尾字符外的其他字符按升序排列
2013/03/08 面试题
Internet主要有哪些网络群组成
2015/12/24 面试题
程序员经常用到的UNIX命令
2015/04/13 面试题
信息管理专业学生自荐信格式
2013/09/22 职场文书
高中毕业自我鉴定范文
2013/10/02 职场文书
大学同学十年聚会感言
2014/02/21 职场文书
高中生学习计划书
2014/09/15 职场文书
党员剖析材料范文
2014/12/18 职场文书
幼儿园六一儿童节活动总结
2015/02/10 职场文书
校本研修个人总结
2015/02/28 职场文书
成品仓库管理员岗位职责
2015/04/09 职场文书
国情备忘录观后感
2015/06/04 职场文书