Python XML解析

xml文档内容大致如下:

#使用minidom解析器打开我们的xml文档
from xml.dom.minidom import parse
import xml.dom.minidom
DOMtree=xml.dom.minidom.parse("D://最新的省市区数据.xml") #读取文件
root=DOMtree.documentElement     #根节点对象
province=root.getElementsByTagName("province")  #下一级节点对象
for provinc in province:
    if provinc.hasAttribute("name"):            #判断属性的key
        print("province:%s"%provinc.getAttribute("name"))
    city=provinc.getElementsByTagName("city")    #其中一个province的下一级节点对象
    for cit in city:
        if provinc.hasAttribute("name"):
            print("         "+"city:%s" % cit.getAttribute("name"))    #其中一个city的下一级节点对象
            district=cit.getElementsByTagName("district")              #其中一个city的下一级节点对象
            for distric in district:
                print("                  " + "distric:%s  zipcode%s" % (distric.getAttribute("name"),distric.getAttribute("zipcode")))

 部分结果输出:

province:北京
         city:朝阳区
                  distric:三环到四环之间  zipcode2819
                  distric:四环到五环之间  zipcode2839
                  distric:五环到六环之间  zipcode2840
                  distric:管庄  zipcode4137
                  distric:北苑  zipcode4139
                  distric:定福庄  zipcode4211
                  distric:三环以内  zipcode2799
         city:海淀区
                  distric:三环以内  zipcode2848
                  distric:三环到四环之间  zipcode2849
                  distric:四环到五环之间  zipcode2850
                  distric:五环到六环之间  zipcode2851
                  distric:六环以外  zipcode2852
                  distric:西三旗  zipcode4134
                  distric:西二旗  zipcode4209
         city:西城区
                  distric:内环到二环里  zipcode2827
                  distric:二环到三环  zipcode2853
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值