python 提供了xml.etree.ElementTree模块对xml数据进行处理
1.通过字符串方式读取,参数为XML字符串
# coding:utf-8
import xml.etree.ElementTree as ET
xml_string = """
<bookstore author="frank">
<book id="1">
<name>python</name>
<price>12.33</price>
</book>
<book id="2">
<name>shell</name>
<price>11.91</price>
</book>
<book id="3">
<name>java</name>
<price>22.23</price>
</book>
</bookstore>
"""
# 返回根元素对象
root = ET.fromstring(xml_string)
print root
运行结果
2. 标签的名字、属性、值分别对应 元素对象的tag、attrib、text 三个属性
books = root.iter("book") # 获取所有的book标签
for ele in books:
print "tag name:{0} , attr: {1}" .format(ele.tag, ele.attrib) # 打印book标签名字和属性
运行结果
获取书名
books = root.iter("book")
for ele in books:
print "attr: {0}, book name: {1}" .format(ele.attrib, ele[0].text) # ele[0]获取的是book标签的第一个子元素name,
运行结果