当前位置: 首页 > news >正文

python转xml为json

以下代码取自获取PA防火墙策略XML文件并转为JSON文件的场景:
通过PA防火墙API获取防火墙策略
防火墙策略xpath为./result/security/rules/entry
以下代码实现将所有entry即策略与策略相关属性转为json对象并存储至文件

import xml.etree.ElementTree as ET
import requests
import jsonentries_XPath = './result/security/rules/entry'# xml"对象"转字典
def element_to_dict(element):result = {}if element.tag == 'entry':result['name'] = element.attrib.get('name')result['uuid'] = element.attrib.get('uuid')if len(element) == 0:return element.textfor child in element:child_data = element_to_dict(child)if child.tag in result:if type(result[child.tag]) is list:result[child.tag].append(child_data)else:result[child.tag] = [result[child.tag], child_data]else:result[child.tag] = child_datareturn result# xml转json
def transfer_xml_to_json(xml_policy_response):root = ET.fromstring(xml_policy_response)entries = root.findall(entries_XPath)json_policy_response = [element_to_dict(entry) for entry in entries]return json_policy_responseif __name__ == '__main__':get_api_key(firewall_ip, username, password)xml_policy_response = get_security_policy(firewall_ip, api_key)json_policy_response = transfer_xml_to_json(xml_policy_response.text)with open('rules.json', 'w') as f:json.dump(json_policy_response, f)
http://www.lryc.cn/news/221614.html

相关文章:

  • PHP Curl请求封装
  • java list set 特性
  • Docker 用centos 编译安装apache
  • 专访虚拟人科技:如何利用 3DCAT 实时云渲染打造元宇宙空间
  • 第三章:人工智能深度学习教程-基础神经网络(第二节-ANN 和 BNN 的区别)
  • 回归模型原理总结及代码实现
  • 游戏开发中的“御用中介“
  • flink1.15报错 processElement_split
  • 电脑投屏到TCL电视鼠标延迟
  • 220v插座led指示灯维修
  • ​软考-高级-信息系统项目管理师教程 第四版【第19章-配置与变更管理-思维导图】​
  • javascript自定义事件的观察者模式写法和用法以及继承
  • 蓝桥杯官网练习题(正则问题)
  • iOS使用NSURLSession实现后台上传
  • linux之信号
  • golang工程中间件——redis常用结构及应用(string, hash, list)
  • Java中数据结构(基本数据类型+引用数据类型)介绍+整理+例子+对比
  • SpringSecurity原理
  • 云表平台突破传统,企业级低代码让软件开发速度提升
  • 三数之和(双指针)
  • Linux-bluetooth蓝牙
  • mediasoup webrtc音视频会议搭建
  • 【操作系统】操作系统的大端模式和小端模式
  • Oracle(13)Maintaining Data Integrity
  • 工程(十二)Ubuntu20.04LSD_SLAM运行
  • 跨境电商,用指纹浏览器还是VPS?有何区别?
  • R语言piecewiseSEM结构方程模型在生态环境领域实践技术应用
  • 一站式解决方案:体验亚马逊轻量服务器/VPS的顶级服务与灵活性
  • pda条码二维码扫描数据采集安卓手持终端扫码热敏标签打印一体机
  • 白上这么多年班,才知道数据可视化这么简单