将xml格式转换为json格式

在Python编程中,经常遇到xml格式的文件或字符串。由于json格式的方便性,常常希望将xml格式转换为json格式来处理,这可以通过模块xmltodict来实现。

xmltodict模块通过pip来下载和安装:

C:\>pip3 install xmltodict

Collecting xmltodict

Downloading https://files.pythonhosted.org/packages/28/fd/30d5c1d3ac29ce229f6bdc40bbc20b28f716e8b363140c26eff19122d8a5/xmltodict-0.12.0-py2.py3-none-any.whl

Installing collected packages: xmltodict

Successfully installed xmltodict-0.12.0

导入该模块后,在代码中使用xmltodict.parse(xml_str)进行处理,这将把xml格式字符串转换为字典格式的数据,再配合json模块的dumps()函数,将字典转换为json格式的字符串。


import xmltodict
import json
 
# xml to json
def xmlToJson(xml_str):
    try:
        json_dict = xmltodict.parse(xml_str, encoding = 'utf-8')
        json_str = json.dumps(json_dict, indent = 2)
        return json_str
    except:
        pass
 
# json to xml
def jsonToXml(json_str):
    try:
        json_dict = json.loads(json_str)
        xml_str = xmltodict.unparse(json_dict, encoding = 'utf-8')
    except:
        xml_str = xmltodict.umparse({'request':json_dict}, encoding = 'utf-8')
    finally:
        return xml_str
 
# load xml file
def load_json(xml_path):
    # 获取xml文件
    xml_file = open(xml_path, 'r')
    xml_str = xml_file.read()
    # 将读取的xml字符串转换为字典
    json_dict = xmltodict.parse(xml_str)
    # 将字典转换为json格式的字符串
    json_str = json.dumps(json_dict, indent = 2)
    return json_str


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28974745/viewspace-2639062/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/28974745/viewspace-2639062/

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值