Python使用MYSQLDB实现从数据库中导出XML文件的方法


Posted in Python onMay 11, 2015

本文实例讲述了Python使用MYSQLDB实现从数据库中导出XML文件的方法。分享给大家供大家参考。具体分析如下:

这里需要给前端以xml格式提供一些数据,这些数据在目前的数据库中已经存在。

如果使用django返回xml数据的话,需要包装下头信息:

r = HttpResponse(str_xml)

r.mimetype = "text/xml"

r['Content-Type'] = "application/xml"

另外,使用group by可以使用以下方式来查询。
objs = Fish.objects.raw("SELECT  id, almanac_name, style , almanac_code,almanac_description FROM ppy_fish WHERE almanac_name != ''  GROUP BY almanac_code")

简单的举个例子:

# -*- coding: utf-8 -*-
from xml.dom import minidom
import MySQLdb
conn = MySQLdb.connect(host='localhost',user='root',passwd='xxx',db='my_xml',charset="utf8")
cursor = conn.cursor()
cursor.execute('select id, name, style, description, family from ppy_fish')
res_list = cursor.fetchall()
print len(res_list)
doc = minidom.Document()
root = doc.createElement("data")
doc.appendChild(root)
ATTRIBUTE = {"n":1, "d":3}
for res in res_list:
  node = doc.createElement(res[2])
  for i in ATTRIBUTE:
    id_node = doc.createElement("%s" % i)
    data = doc.createTextNode("%s" % res[ATTRIBUTE[i]])
    id_node.appendChild(data)
    node.appendChild(id_node)
  root.appendChild(node)
str_xml = doc.toxml("utf-8")
f = open('fish.xml', 'w')
f.write(str_xml)
f.close()
cursor.close()
conn.close()

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python网络编程学习笔记(五):socket的一些补充
Jun 09 Python
Django原生sql也能使用Paginator分页的示例代码
Nov 15 Python
Python通过OpenCV的findContours获取轮廓并切割实例
Jan 05 Python
Python实现霍夫圆和椭圆变换代码详解
Jan 12 Python
Django实战之用户认证(初始配置)
Jul 16 Python
在Python dataframe中出生日期转化为年龄的实现方法
Oct 20 Python
Django 配置多站点多域名的实现步骤
May 17 Python
Python 转换RGB颜色值的示例代码
Oct 13 Python
Python 实现使用空值进行赋值 None
Mar 12 Python
浅析python 字典嵌套
Sep 29 Python
python中altair可视化库实例用法
Jan 26 Python
python反扒机制的5种解决方法
Feb 06 Python
Python生成不重复随机值的方法
May 11 #Python
Python解析nginx日志文件
May 11 #Python
Python字符串替换实例分析
May 11 #Python
Python使用django获取用户IP地址的方法
May 11 #Python
总结Python编程中三条常用的技巧
May 11 #Python
python求解水仙花数的方法
May 11 #Python
pymongo为mongodb数据库添加索引的方法
May 11 #Python
You might like
php 生成WML页面方法详解
2009/08/09 PHP
PHP strtotime函数详解
2009/12/18 PHP
php实现多张图片上传加水印技巧
2013/04/18 PHP
php实现字符串首字母转换成大写的方法
2015/03/17 PHP
PHP回调函数概念与用法实例分析
2017/11/03 PHP
jQuery 连续列表实现代码
2009/12/21 Javascript
基于jquery的获取浏览器窗口大小的代码
2011/03/28 Javascript
JavaScript 用Node.js写Shell脚本[译]
2012/09/20 Javascript
jquery 选取方法都有哪些
2014/05/18 Javascript
jQuery中DOM操作实例分析
2015/01/23 Javascript
js实现从右向左缓缓浮出网页浮动层广告的方法
2015/05/09 Javascript
基于jquery实现select选择框内容左右移动添加删除代码分享
2015/08/25 Javascript
js实现的光标位置工具函数示例
2016/10/03 Javascript
JavaScript之promise_动力节点Java学院整理
2017/07/03 Javascript
p5.js入门教程之图片加载
2018/03/20 Javascript
详解angular如何调用HTML字符串的方法
2018/06/30 Javascript
vue ssr 实现方式(学习笔记)
2019/01/18 Javascript
Vue插槽原理与用法详解
2019/03/05 Javascript
ES6字符串的扩展实例
2020/12/21 Javascript
使用Node.js和Socket.IO扩展Django的实时处理功能
2015/04/20 Python
python中aioysql(异步操作MySQL)的方法
2019/04/11 Python
django框架ModelForm组件用法详解
2019/12/11 Python
PyCharm无法引用自身项目解决方式
2020/02/12 Python
Django 404、500页面全局配置知识点详解
2020/03/10 Python
Java如何基于wsimport调用wcf接口
2020/06/17 Python
使用Python实现微信拍一拍功能的思路代码
2020/07/09 Python
css3绘制天猫logo实现代码
2012/11/06 HTML / CSS
广州足迹信息技术有限公司Java软件工程师试题
2014/02/15 面试题
简历里的自我评价
2014/01/31 职场文书
公务员综合考察材料
2014/02/01 职场文书
艺术设计专业毕业生推荐信
2014/07/08 职场文书
纪念九一八事变演讲稿:忘记意味着背叛
2014/09/14 职场文书
不服从公司安排检讨书
2014/09/24 职场文书
基督教追悼会答谢词
2015/09/29 职场文书
2015年四年级班主任工作总结
2015/10/22 职场文书
小学语文的各类谚语(70首)
2019/08/15 职场文书