python解析xml文件实例分析


Posted in Python onMay 27, 2015

本文实例讲述了python解析xml文件的方法。分享给大家供大家参考。具体如下:

python解析xml非常方便。在dive into python中也有讲解。

如果xml的结构如下:

<?xml version="1.0" encoding="utf-8"?> 
<books> 
  <book> 
    <author>zoer</author> 
    <title>think in java</title> 
    <content>this is a good book</content> 
  </book> 
  <book> 
    <author>naughty</author> 
    <title>gone with the wind</title> 
    <content>this is a good book 2</content> 
  </book> 
  <book> 
    <author>cc</author> 
    <content>this is a good book 3</content> 
  </book> 
</books>

第三个book是没有title标记的。由于不要相信代码输入,所以在代码中要做检查(比如说检查这里的有没有子标签)。

解析代码如下:

#coding=utf-8 
#parse all books 
#author:  naughty610 
#date:   2012-8-16 
import xml.dom.minidom 
dom = xml.dom.minidom.parse('C:/Users/naughty/Desktop/books.xml') 
root = dom.documentElement 
#获取每一个下一层节点 
for node in root.childNodes:
#这样取得的是root节点以下一层的节点,而不是root节点以下所有节点 
  #取所有非text节点 
  if node.nodeType == node.ELEMENT_NODE: 
    #取author字段 
    author=node.getElementsByTagName("author") 
    if len(author)>=1: 
      print author[0].childNodes[0].data 
    #取title字段 
    title=node.getElementsByTagName("title") 
    if len(title)>=1: 
      print title[0].childNodes[0].data 
    #取content字段 
    content=node.getElementsByTagName("content") 
    if len(content)>=1: 
      print content[0].childNodes[0].data 
    print "........................parting line........................"

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

Python 相关文章推荐
线程和进程的区别及Python代码实例
Feb 04 Python
python实现颜色rgb和hex相互转换的函数
Mar 19 Python
Python在信息学竞赛中的运用及Python的基本用法(详解)
Aug 15 Python
python的变量与赋值详细分析
Nov 08 Python
Python 删除连续出现的指定字符的实例
Jun 29 Python
Python开发最牛逼的IDE——pycharm
Aug 01 Python
python中将正则过滤的内容输出写入到文件中的实例
Oct 21 Python
Django框架会话技术实例分析【Cookie与Session】
May 24 Python
python安装本地whl的实例步骤
Oct 12 Python
Pytest单元测试框架如何实现参数化
Sep 05 Python
python中翻译功能translate模块实现方法
Dec 17 Python
python实现学生通讯录管理系统
Feb 25 Python
Python定时执行之Timer用法示例
May 27 #Python
python定时执行指定函数的方法
May 27 #Python
python统计文本字符串里单词出现频率的方法
May 26 #Python
python通过get,post方式发送http请求和接收http响应的方法
May 26 #Python
python使用urllib2提交http post请求的方法
May 26 #Python
Python同时向控制台和文件输出日志logging的方法
May 26 #Python
python实现查找excel里某一列重复数据并且剔除后打印的方法
May 26 #Python
You might like
PHP数据类型之布尔型的介绍
2013/04/28 PHP
基于PHP生成静态页的实现方法
2013/05/10 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(五)
2014/06/23 PHP
PHP实现生成带背景的图形验证码功能
2016/10/03 PHP
php微信公众号开发之现金红包
2018/04/16 PHP
PHP获取本周所有日期或者最近七天所有日期的方法
2018/06/20 PHP
JavaScript 注册事件代码
2011/01/27 Javascript
Js sort排序使用方法
2011/10/17 Javascript
纯js分页代码(简洁实用)
2013/11/05 Javascript
关于javascript模块加载技术的一些思考
2014/11/28 Javascript
js实现九宫格图片半透明渐显特效的方法
2015/02/16 Javascript
jQuery插件scroll实现无缝滚动效果
2015/04/27 Javascript
JavaScript使用encodeURI()和decodeURI()获取字符串值的方法
2015/08/04 Javascript
jQuery实现非常实用漂亮的select下拉菜单选择效果
2015/11/06 Javascript
JavaScript与HTML的结合方法详解
2015/11/23 Javascript
javascript中的作用域和闭包详解
2016/01/13 Javascript
AngularJS中的过滤器filter用法完全解析
2016/04/22 Javascript
Vuejs第七篇之Vuejs过渡动画案例全面解析
2016/09/05 Javascript
微信小程序 地图定位简单实例
2016/10/14 Javascript
Javascript封装id、class与元素选择器方法示例
2017/03/13 Javascript
详解Vue源码学习之双向绑定
2019/04/10 Javascript
jquery+css3实现的经典弹出层效果示例
2020/05/16 jQuery
jQuery实现朋友圈查看图片
2020/09/11 jQuery
Python中的单继承与多继承实例分析
2018/05/10 Python
python 实现敏感词过滤的方法
2019/01/21 Python
python itchat给指定联系人发消息的方法
2019/06/11 Python
python根据文本生成词云图代码实例
2019/11/15 Python
全网最详细的PyCharm+Anaconda的安装过程图解
2021/01/25 Python
amazeui 验证按钮扩展的实现
2020/08/21 HTML / CSS
什么是组件架构
2016/05/15 面试题
2014年科室工作总结
2014/11/20 职场文书
用Python进行栅格数据的分区统计和批量提取
2021/05/27 Python
Python自动化测试PO模型封装过程详解
2021/06/22 Python
浅谈MySQL表空间回收的正确姿势
2021/10/05 MySQL
CSS控制继承中的height能变为可继承吗
2022/06/10 HTML / CSS
HTML页面点击按钮关闭页面的多种方式
2022/12/24 HTML / CSS