天天看点

python中xml.dom.minidom解析xml文件

xml.dom.minidom官方api地址:

https://docs.python.org/3/library/xml.dom.minidom.html

xml.dom的api:

https://docs.python.org/3/library/xml.dom.html

大体浏览一下下面表格中objects的属性

python中xml.dom.minidom解析xml文件

示例:

import xml.dom.minidom as xmldom
import os

filepath = os.path.abspath('file.xml')
print(filepath)
domobj = xmldom.parse(filepath)  #将读取的xml文件的内容解析为Document
print(type(domobj))  #输出类型Document
titles = domobj.getElementsByTagName("title") #获取所有的title标签(类型为NodeList)
print(type(titles),len(titles)) #输出getElementsByTagName的返回类型和长度
#获取标签中间的值
for title in titles:
    for node in title.childNodes:
        print(node.data) #需遍历到标签最后一层才能获取data
#获取标签属性的值
slides = domobj.getElementsByTagName("slide")
for slide in slides:
    if slide.hasAttribute('min'):
        print('min value:',slide.getAttribute('min'))

print('end!')
           

file.xml中的内容,放到和.py同目录即可

<?xml version="1.0" encoding="UTF-8"?>
<slideshow>
    <title>Demo slideshow</title>
    <slide min="10" max="100">
        <title>Slide title</title>
        <point>This is a demo</point>
        <point>Of a program for processing slides</point>
    </slide>

    <slide>
        <title>Another demo slide</title>
        <point>It is important</point>
        <point>To have more than</point>
        <point>one slide</point>
    </slide>
</slideshow>