xml demo

  • config.xml

    
    
        http
        172.31.31.100
        8100
    
    
    
    
        172.31.31.100
        3306
        p2p3
        root
        123456
    
    
    
    
        chrome
        ie,firefox,chrome
    
    
    
    10
    
    
    0
    
    3


  • xml demo
import os
from xml.dom.minidom import parse
# 定义一个字典保存ip信息
ip_dict = {}
# 定义配置文件的路径
xml_path = os.path.dirname(os.path.dirname(__file__))+r"\conf\config.xml"
# 解析该xml文件,得到树状结构
dom_tree = parse(xml_path)
# 得到树状结构的根节点
document = dom_tree.documentElement
# 根据标签名字找到根节点下所有的ipinfo标签元素,并取出第一个(实际上,也只有一个)
ipinfo_element = document.getElementsByTagName("ipinfo")[0]
# 根据ipinfo标签元素取出其下一级的协议、IP、端口等标签元素
protocol_element = ipinfo_element.getElementsByTagName("protocol")[0]
ip_element = ipinfo_element.getElementsByTagName("ip")[0]
port_element = ipinfo_element.getElementsByTagName("port")[0]
# 再取出各标签元素第一个子节点的值
protocol = protocol_element.childNodes[0].data
ip = ip_element.childNodes[0].data
port = port_element.childNodes[0].data
# 以字典方式返回(可选)
ip_dict["ip"] = ip
ip_dict["port"] = port
ip_dict["protocol"] = protocol

print(ip_dict)

你可能感兴趣的:(xml demo)