python 解析XML python模块xml.dom解析xml实例代码

yizhihongxing

Python是一门非常强大的编程语言,其拥有许多方便快捷的模块,其中xml.dom模块解析XML文件便是其中之一。本篇攻略详细讲解python模块xml.dom解析xml的具体用法。

一、xml.dom模块基本介绍

XML 是一种标记语言,和 HTML 类似,但 XML 的目的是传输数据,而不是展示数据。XML 模块提供了用于解析 XML 文档的类和函数。它使用 Python DOM API 来解析 XML 数据。

二、实例说明

1. 解析XML文件

import xml.dom.minidom

# 打开xml文件
DOMTree = xml.dom.minidom.parse("example.xml")

# 获取文档对象
collection = DOMTree.documentElement

# 遍历所有film标签
films = collection.getElementsByTagName("film")
print ("=====遍历所有film标签=====")
for film in films:
   print ("*****Film*****")
   if film.hasAttribute("title"):
      print ("Title: %s" % film.getAttribute("title"))

   type = film.getElementsByTagName('type')[0]
   print ("Type: %s" % type.childNodes[0].data)

   format = film.getElementsByTagName('format')[0]
   print ("Format: %s" % format.childNodes[0].data)

   rating = film.getElementsByTagName('rating')[0]
   print ("Rating: %s" % rating.childNodes[0].data)

   description = film.getElementsByTagName('description')[0]
   print ("Description: %s" % description.childNodes[0].data)

以上代码解析了一个名为"example.xml"的XML文件,并从中获取影片的各种信息。输出结果如下:

=====遍历所有film标签=====
*****Film*****
Title: Enemy Behind
Type: War, Thriller
Format: DVD
Rating: PG
Description: Talk about a US-Japan war
*****Film*****
Title: Transformers
Type: Anime, Science Fiction
Format: DVD
Rating: R
Description: A schientific fiction
*****Film*****
Title: Trigun
Type: Anime, Action
Format: DVD
Rating: PG
Description: Vash the Stampede!
*****Film*****
Title: Ishtar
Type: Comedy
Format: VHS
Rating: PG
Description: Viewable boredom

2. 创建XML文件

import xml.dom.minidom

# 创建XML文档对象
doc = xml.dom.minidom.Document()

# 创建根节点
root = doc.createElement('root')

# 添加到文档中
doc.appendChild(root)

# 创建一个Country节点
Country = doc.createElement('Country')
# 给节点设置属性
Country.setAttribute('name', 'China')
# 添加到根节点中
root.appendChild(Country)

# 创建一个Province节点
Province = doc.createElement('Province')
Province.setAttribute('name', 'Guangdong')
# 将省份作为子节点添加到国家节点中
Country.appendChild(Province)

# 创建一个City节点
City = doc.createElement('City')
City.setAttribute('name', 'Shenzhen')
# 将城市作为子节点添加到省份中
Province.appendChild(City)

# 保存文件
doc.writexml(open('example.xml', 'w'),indent='', addindent='  ', newl='\n')

print("XML创建成功!")

以上代码创建了一个名为"example.xml"的XML文件,输出结果如下:

<root>
  <Country name="China">
    <Province name="Guangdong">
      <City name="Shenzhen"/>
    </Province>
  </Country>
</root>

三、总结

本篇攻略详细讲解了python模块xml.dom解析xml的基本用法,并提供了两个实例说明,让读者能够更加深入地理解和熟练应用该模块。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python 解析XML python模块xml.dom解析xml实例代码 - Python技术站

(0)
上一篇 2023年5月30日
下一篇 2023年5月30日

相关文章

  • Android高级xml布局之输入框EditText设计

    当我们在Android应用程序开发中设计界面时,输入框(EditText)是经常用到的控件之一。EditText可以让用户在应用程序中输入文本、数字、邮箱等。如何设计好EditText控件,让用户在我们的应用程序中可以更加方便地输入内容呢?下面就是关于Android高级xml布局之输入框EditText设计的完整攻略。 设置EditText的属性 输入类型 …

    html 2023年5月30日
    00
  • Win10 Edge浏览器怎么修改默认搜索引擎?

    以下是“Win10 Edge浏览器怎么修改默认搜索引擎?”的完整攻略: 打开Edge浏览器:首先,打开您的Edge浏览器。 打开设置:在Edge浏览器中,点击右上角的“…”按钮,然后选择“设置”选项。 打开搜索引擎设置:在“设置”页面中,选择“隐私、搜索和服务”选项。然后,选择“地址栏和搜索”选项。 修改默认搜索引擎:在“地址栏和搜索”页面中,找到“搜索…

    html 2023年5月18日
    00
  • 微信是什么?微信怎么用?

    微信是一款由中国科技公司腾讯推出的即时通讯软件,也是一款社交应用。它可以帮助用户与朋友、家人和同事保持联系,同时还提供了许多其他功能,如支付、购物、游戏等。下面是微信的详细使用攻略: 步骤1:下载和安装微信 打开应用商店或者微信官网,搜索并下载微信应用。 安装微信应用并打开。 步骤2:注册微信帐号 在微信应用中,点击“注册”按钮。 填写您的手机号码和验证码。…

    html 2023年5月17日
    00
  • 腾讯新闻app怎么管理我的关注?

    以下是“腾讯新闻app怎么管理我的关注?”的完整攻略: 腾讯新闻app怎么管理我的关注? 腾讯新闻app是一款非常受欢迎的新闻客户端,用户可以通过该应用程序获取最新的新闻和资讯。以下是一些管理我的关注的方法。 步骤1:打开腾讯新闻app 首先,打开腾讯新闻app,进入主界面。 步骤2:进入“我的”页面 在主界面下方,可以看到“我的”按钮,点击进入“我的”页面…

    html 2023年5月18日
    00
  • Mybatis的xml中使用if/else标签的具体使用

    当在Mybatis的xml文件中编写SQL时,使用if/else标签可以方便地根据条件动态生成SQL语句。下面是使用if/else标签的具体攻略: 1. if标签的使用 if标签用于判断一个条件是否满足,如果满足则执行标签内的SQL语句,否则不执行。下面是一个简单的示例: <select id="getUserByName" par…

    html 2023年5月30日
    00
  • plsql developer怎么连接数据库 plsql developer数据库连接教程

    以下是“plsql developer怎么连接数据库 plsql developer数据库连接教程”的完整攻略: plsql developer怎么连接数据库 plsql developer数据库连接教程 PL/SQL Developer是一款常用的Oracle数据库开发工具,可以用于编写、调试和优化PL/SQL代码。以下是连接数据库的详细教程: 打开PL/…

    html 2023年5月18日
    00
  • asp.net操作xml增删改示例分享

    当需要处理XML数据时,ASP.NET提供了一些强大的工具来进行增加、删除、修改和查询XML文件。下面我们将详细讲解ASP.NET操作XML增删改的完整攻略: 1. 创建XML文档 在ASP.NET中,创建XML文档需要使用System.Xml.XmlDocument类。下面是一个简单的示例,它创建并填充了一个名为“catalog”的XML文档: using…

    html 2023年5月30日
    00
  • 登陆注册页面该怎么设计? 注意这10个要点能迅速提高用户体验

    以下是关于如何设计登陆注册页面的攻略,包括10个要点,以及两个示例说明: 明确页面目的:登陆注册页面的主要目的是让用户完成注册或登陆操作。因此,页面设计应该简单明了,让用户能够快速完成操作。 突出重点:在页面设计中,应该突出重点,让用户能够快速找到需要的操作。例如,可以使用醒目的按钮或颜色来突出“注册”或“登陆”操作。 简化流程:尽可能简化注册或登陆流程,减…

    html 2023年5月17日
    00
合作推广
合作推广
分享本页
返回顶部