用Python将mysql数据导出成json的方法


Posted in Python onAugust 21, 2018

1、相关说明

此脚本可以将Mysql的数据导出成Json格式,导出的内容可以进行select查询确定。

数据传入参数有:dbConfigName, selectSql, jsonPath, fileName。

依赖的库有:MySQLdb、json,尤其MySQLdb需要事先安装好。

2、Python脚本及测试示例

/Users/nisj/PycharmProjects/BiDataProc/oldPythonBak/mysqlData2json.py

# -*- coding=utf-8 -*-
import MySQLdb
import warnings
import datetime
import sys
import json
reload(sys)
sys.setdefaultencoding('utf8')
 
warnings.filterwarnings("ignore")
 
mysqlDb_config = {
  'host': 'MysqlHostIp',
  'user': 'MysqlUser',
  'passwd': 'MysqlPass',
  'port': 50512,
  'db': 'Tv_event'
}
 
today = datetime.date.today()
yesterday = today - datetime.timedelta(days=1)
tomorrow = today + datetime.timedelta(days=1)
 
def getDB(dbConfigName):
  dbConfig = eval(dbConfigName)
  try:
    conn = MySQLdb.connect(host=dbConfig['host'], user=dbConfig['user'], passwd=dbConfig['passwd'],
                port=dbConfig['port'])
    conn.autocommit(True)
    curr = conn.cursor()
    curr.execute("SET NAMES utf8");
    curr.execute("USE %s" % dbConfig['db']);
 
    return conn, curr
  except MySQLdb.Error, e:
    print "Mysql Error %d: %s" % (e.args[0], e.args[1])
    return None, None
 
def mysql2json(dbConfigName, selectSql, jsonPath, fileName):
  conn, curr = getDB(dbConfigName)
  curr.execute(selectSql)
  datas = curr.fetchall()
  fields = curr.description
 
  column_list = []
  for field in fields:
    column_list.append(field[0])
 
  with open('{jsonPath}{fileName}.json'.format(jsonPath=jsonPath, fileName=fileName), 'w+') as f:
    for row in datas:
      result = {}
      for fieldIndex in range(0, len(column_list)):
        result[column_list[fieldIndex]] = str(row[fieldIndex])
      jsondata=json.dumps(result, ensure_ascii=False)
      f.write(jsondata + '\n')
  f.close()
 
  curr.close()
  conn.close()
 
# Batch Test
dbConfigName = 'mysqlDb_config'
selectSql = "SELECT uid,name,phone_num,qq,area,created_time FROM match_apply where match_id = 83 order by created_time desc;"
jsonPath = '/Users/nisj/Desktop/'
fileName = 'mysql2json'
mysql2json(dbConfigName, selectSql, jsonPath, fileName)

以上这篇用Python将mysql数据导出成json的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
一个基于flask的web应用诞生 bootstrap框架美化(3)
Apr 11 Python
Python内存读写操作示例
Jul 18 Python
python requests post多层字典的方法
Dec 27 Python
pandas分区间,算频率的实例
Jul 04 Python
Django Rest framework三种分页方式详解
Jul 26 Python
Python使用scrapy爬取阳光热线问政平台过程解析
Aug 14 Python
python文件操作的简单方法总结
Nov 07 Python
解决pycharm上的jupyter notebook端口被占用问题
Dec 17 Python
Keras中的多分类损失函数用法categorical_crossentropy
Jun 11 Python
python 绘制正态曲线的示例
Sep 24 Python
python FTP编程基础入门
Feb 27 Python
Python带你从浅入深探究Tuple(基础篇)
May 15 Python
windows下python 3.6.4安装配置图文教程
Aug 21 #Python
Python多进程与服务器并发原理及用法实例分析
Aug 21 #Python
Python socket实现的简单通信功能示例
Aug 21 #Python
Python多进程原理与用法分析
Aug 21 #Python
python安装twisted的问题解析
Aug 21 #Python
使用python的pandas库读取csv文件保存至mysql数据库
Aug 20 #Python
Python多线程原理与用法详解
Aug 20 #Python
You might like
wiki-shan写的php在线加密的解密程序
2008/09/07 PHP
php中的字符编码转换函数用法示例
2014/10/20 PHP
php+xml实现在线英文词典查询的方法
2015/01/23 PHP
PHP编程获取图片的主色调的方法【基于Imagick扩展】
2017/08/02 PHP
JQuery判断checkbox是否选中及其它复选框操作方法合集
2015/06/01 Javascript
JS如何生成一个不重复的ID的函数
2016/12/25 Javascript
javascript实现简单的可随机变色网页计算器示例
2016/12/30 Javascript
微信小程序 数组(增,删,改,查)等操作实例详解
2017/01/05 Javascript
详解vue.js全局组件和局部组件
2017/04/10 Javascript
老生常谈combobox和combotree模糊查询
2017/04/17 Javascript
JavaScript实现自动跳转文本功能
2017/05/25 Javascript
利用JS做网页特效_大图轮播(实例讲解)
2017/08/09 Javascript
ejsExcel模板在Vue.js项目中的实际运用
2018/01/27 Javascript
vue 实现左右拖拽元素并且不超过他的父元素的宽度
2018/11/30 Javascript
vue设置一开始进入的页面教程
2019/10/28 Javascript
vue-quill-editor 自定义工具栏和自定义图片上传路径操作
2020/08/03 Javascript
如何在 Vue 表单中处理图片
2021/01/26 Vue.js
[07:12]2014DOTA2西雅图国际邀请赛 黑马Liquid专题采访
2014/07/12 DOTA
在Python的Django框架中显示对象子集的方法
2015/07/21 Python
Python中使用OpenCV库来进行简单的气象学遥感影像计算
2016/02/19 Python
Python函数参数匹配模型通用规则keyword-only参数详解
2019/06/10 Python
Python使用Pandas库实现MySQL数据库的读写
2019/07/06 Python
python爬虫模拟浏览器的两种方法实例分析
2019/12/09 Python
python中def是做什么的
2020/06/10 Python
CSS3地图动态实例代码(圆圈向外扩散)
2018/06/15 HTML / CSS
利用HTML5画出一个坦克的形状具体实现代码
2013/06/20 HTML / CSS
html5绘制时钟动画
2014/12/15 HTML / CSS
英国家具、照明、家居用品网上商店:Wayfair.co.uk
2020/02/13 全球购物
波兰多品牌运动商店:StreetStyle24.pl
2020/09/22 全球购物
幼儿园义卖活动方案
2014/01/17 职场文书
党员创先争优公开承诺书
2014/03/28 职场文书
大学生个人学年总结
2015/02/15 职场文书
毕业论文致谢怎么写
2015/05/14 职场文书
工作经历证明范本
2015/06/15 职场文书
85句关于理想的名言警句大全
2019/08/22 职场文书
windows下快速安装nginx并配置开机自启动的方法
2021/05/11 Servers