• python 处理xml 数据


     1 import xml.sax
     2 import xml.sax.handler
     3 
     4 # python 处理xml 数据 类,将xml数据转化为字典
     5 '''
     6 原数据:<?xml version='1.0' encoding='UTF-8'?><recordset><user><empNo>9321</empNo><name>张氏</name><mis>张氏</mis><system>百度</system><fullDeptName>/百度/销售支持部/业务培训组</fullDeptName><position>业务培训经理</position><positionType>管理类</positionType><ygState>正式</ygState><ygType>管理员工</ygType><zwz>管理族</zwz><rzDate>2008-04-02</rzDate><zzDate>2008-06-01</zzDate><zone>北京</zone><dxqs>15</dxqs><iflz>否</iflz><lzDate>null</lzDate><ssoid>9764043</ssoid><im>zhangshi</im><email>zhangshi@baidu.com</email></user></recordset> 7 处理后:{'empNo': '9321', 'name': '张氏', 'mis': '张氏', 'system': '百度', 'fullDeptName': '/百度/销售支持部/业务培训组', 'position': '业务培训经理', 'positionType': '管理类', 'ygState': '正式', 'ygType': '管理员工', 'zwz': '管理族', 'rzDate': '2008-04-02', 'zzDate': '2008-06-01', 'zone': '北京', 'dxqs': '15', 'iflz': '否', 'lzDate': 'null', 'ssoid': '9764043', 'im': 'zhangshi', 'email': 'zhangshi@baidu.com', 'user': 'zhangshi@baidu.com', 'recordset': 'zhangshi@baidu.com'} 8 '''
     9 class XMLHandler(xml.sax.handler.ContentHandler):
    10     def __init__(self):
    11         self.buffer = ""
    12         self.mapping = {}
    13 
    14     def startElement(self, name, attributes):
    15         self.buffer = ""
    16 
    17     def characters(self, data):
    18         self.buffer += data
    19 
    20     def endElement(self, name):
    21         self.mapping[name] = self.buffer
    22 
    23     def getDict(self):
    24         return self.mapping

    #调用执行,处理xml数据

    1 xh = XMLHandler()
    2 xml.sax.parseString(r11.encode(), xh)    #r11  为XML 数据。
    3 result_dict = xh.getDict()
  • 相关阅读:
    MVC3.0与C#截取字符串
    MVC3.0图片滚动和相册展示(上)
    MVC3.0视频点播及上传格式转化
    职位VS能力
    liblfds 测试
    dpdk 相关概念
    WAR文件
    在word中选择一个矩形区域
    IP地址 网段的划分
    ipconfig...ping...netstat
  • 原文地址:https://www.cnblogs.com/weijie0717/p/13054631.html
Copyright © 2020-2023  润新知