XML的ElementTree解析方式
Posted mrzhang3389
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XML的ElementTree解析方式相关的知识,希望对你有一定的参考价值。
本章简单的了解一下xml的解析即可.
github博客传送门
csdn博客传送门
XML的解析
# 首先当是导入解析包了.
import xml.etree.cElementTree as ET # 二选一建议选第一个
import xml.etree.ElementTree as ET # 二选一建议选第一个
常用方法:
当要获取属性值时,用attrib方法。
当要获取节点值时,用text方法。
当要获取节点名时,用tag方法。
例:
import xml.etree.ElementTree as ET # 导入解析XML的ElementTree包
tree = ET.parse("movies.xml") # 将XML文件转换为ElementTree能解析的格式
root = tree.getroot() # 获取根元素
print(root.tag, ":", root.attrib) # 打印根元素的tag和属性
# 遍历所有的movie标签
for movie in root.findall("movie"):
# 查找movie标签下的第一个type标签
type = movie.find("type").text
# 获取movie标签的title属性
title = movie.get("title")
# 打印movie的title 和 type内的文本
print(title, type)
XML文档内容:
<collection shelf="New Arrivals">
<movie title="Enemy Behind">
<type>War, Thriller</type>
<format>DVD</format>
<year>2003</year>
<rating>PG</rating>
<stars>10</stars>
<description>Talk about a US-Japan war</description>
</movie>
<movie title="Transformers">
<type>Anime, Science Fiction</type>
<format>DVD</format>
<year>1989</year>
<rating>R</rating>
<stars>8</stars>
<description>A schientific fiction</description>
</movie>
<movie title="Trigun">
<type>Anime, Action</type>
<format>DVD</format>
<episodes>4</episodes>
<rating>PG</rating>
<stars>10</stars>
<description>Vash the Stampede!</description>
</movie>
<movie title="Ishtar">
<type>Comedy</type>
<format>VHS</format>
<rating>PG</rating>
<stars>2</stars>
<description>Viewable boredom</description>
</movie>
</collection>
以上是关于XML的ElementTree解析方式的主要内容,如果未能解决你的问题,请参考以下文章
python解析xml文件之xml.etree.cElementTree和xml.etree.ElementTree区别
使用 xml.etree.ElementTree 在 python 中解析 XML