Element类型是一种灵活的容器对象,用于在内存中存储结构化数据。
每个element对象都具有以下属性:
1. tag:string对象,表示数据代表的种类。
2. attrib:dictionary对象,表示附有的属性。
3. text:string对象,表示element的内容。
4. tail:string对象,表示element闭合之后的尾迹。
5. 若干子元素(child elements)。
<tag attrib1=1>text</tag>tail
1 2 3 4
创建元素的方法有Element或者SubElement(),
前者称作元素的构建函数(constructor),用以构建任一独存的元素;
后者称作元素的制造函数(factory function),用以制造某一元素的子元素。
有了一串元素之后,使用ElementTree类来将其打包,把一串元素转换为xml文件或者从xml文件中解析出来。
导入ElementTree
import xml.etree.ElementTree as ET
使用ElementTree代表整个XML文件,并将其视为一棵树,Element代表这个文档树中的单个节点。
ET对象可以通过以下方法导入数据:
# 从硬盘的xml文件中读取
import xml.etree.ElementTree as ET
tree = ET.parse('aa.xml')
root = tree.getroot() # 获取根节点
# 从字符串读取数据
root = ET.fromstring(aa_as_string)
可以对根节点进行操作,获取其子元素
for child in root:
print child.tag, child.attrib
# 或使用索引寻找子节点
root[0][1]