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的Django框架中TEMPLATES项的设置教程
May 29 Python
Python callable()函数用法实例分析
Mar 17 Python
对Python 窗体(tkinter)树状数据(Treeview)详解
Oct 11 Python
解决Shell执行python文件,传参空格引起的问题
Oct 30 Python
树莓派用python中的OpenCV输出USB摄像头画面
Jun 22 Python
Django 路由控制的实现
Jul 17 Python
python socket通信编程实现文件上传代码实例
Dec 14 Python
使用 Python 处理3万多条数据只要几秒钟
Jan 19 Python
Django 设置多环境配置文件载入问题
Feb 25 Python
keras中的卷积层&amp;池化层的用法
May 22 Python
Python作用域和名称空间的详细介绍
Apr 13 Python
如何基于python实现单目三维重建详解
Jun 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生成Gif图片验证码
2013/10/27 PHP
Laravel使用Queue队列的技巧汇总
2019/09/02 PHP
Thinkphp5.0 框架实现控制器向视图view赋值及视图view取值操作示例
2019/10/12 PHP
jQuery 操作下拉列表框实现代码
2010/02/22 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(三)情景对话中仿打字机输出文字
2013/01/23 Javascript
jQuery实现列表自动循环滚动鼠标悬停时停止滚动
2013/09/06 Javascript
javascript创建数组之联合数组的使用方法示例
2013/12/26 Javascript
在JavaScript中使用timer示例
2014/05/08 Javascript
判断iframe里的页面是否加载完成
2014/06/06 Javascript
js获取IP地址的方法小结
2014/07/01 Javascript
全面解析Bootstrap中transition、affix的使用方法
2016/05/30 Javascript
用AngularJS来实现监察表单按钮的禁用效果
2016/11/02 Javascript
jquery 标签 隔若干行加空白或者加虚线的方法
2016/12/07 Javascript
详解webpack进阶之插件篇
2017/07/06 Javascript
vue-cli3脚手架的配置及使用教程
2018/08/28 Javascript
JS实现根据详细地址获取经纬度功能示例
2019/04/16 Javascript
jQuery中使用validate插件校验表单功能
2019/05/24 jQuery
[01:59][TI9趣味视频] 全明星赛奖励
2019/08/23 DOTA
python实现ftp客户端示例分享
2014/02/17 Python
python方向键控制上下左右代码
2018/01/20 Python
django中send_mail功能实现详解
2018/02/06 Python
Django数据库连接丢失问题的解决方法
2018/12/29 Python
Python实现数值积分方式
2019/11/20 Python
如何使用python的ctypes调用医保中心的dll动态库下载医保中心的账单
2020/05/24 Python
python自动化办公操作PPT的实现
2021/02/05 Python
html2 canvas生成清晰的图片实现打印功能
2019/09/23 HTML / CSS
Fairyseason:为个人和批发商提供女装和配件
2017/03/01 全球购物
大学生大二自我鉴定
2013/10/28 职场文书
普罗米修斯教学反思
2014/02/06 职场文书
期中考试后的反思
2014/02/08 职场文书
四年级评语大全
2014/04/21 职场文书
二年级学生评语大全
2014/04/23 职场文书
星级党支部申报材料
2014/05/31 职场文书
幼儿园清明节活动总结
2014/07/04 职场文书
redis连接被拒绝的解决方案
2021/04/12 Redis
Nginx配置使用详解
2022/07/07 Servers