python解析xml文件实例分析

yipeiwu_com6年前Python基础

本文实例讲述了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 Matplotlib库安装与基本作图示例

Python Matplotlib库安装与基本作图示例

本文实例讲述了Python Matplotlib库安装与基本作图。分享给大家供大家参考,具体如下: 不论是数据挖掘还是数据建模,都免不了数据可视化的问题。对于Python来说,Matpl...

详解如何用TensorFlow训练和识别/分类自定义图片

详解如何用TensorFlow训练和识别/分类自定义图片

很多正在入门或刚入门TensorFlow机器学习的同学希望能够通过自己指定图片源对模型进行训练,然后识别和分类自己指定的图片。但是,在TensorFlow官方入门教程中,并无明确给出如何...

python中sets模块的用法实例

本文实例简单讲述了python中sets模块的用法,分享给大家供大家参考。 具体方法如下: import sets magic_chars = sets.Set('abracada...

python错误调试及单元文档测试过程解析

这篇文章主要介绍了python错误调试及单元文档测试过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 错误分为程序的错误和由用户...

python实现在目录中查找指定文件的方法

本文实例讲述了python实现在目录中查找指定文件的方法。分享给大家供大家参考。具体实现方法如下: 1. 模糊查找 复制代码 代码如下:import os from glob impor...