首页 > 解决方案 > 我的输入是 XML 格式,需要在 Python 中转换成列表结构?

问题描述

我正在尝试获取 API 调用响应并将 XML 数据解析为列表,但我正在努力处理多个子/父关系。

我希望导出一个新的 XML 文件,该文件将排列每个作业 ID 和跟踪号,然后我可以将其导入 Excel。这是我到目前为止所拥有的源 XML 文件如下所示:

<project>
   <name>October 2019</name>
   <jobs>
      <job>
      <id>5654206</id>
      <tracking>
         <mailPiece>
             <barCode>00270200802095682022</barCode>
             <address>Accounts Payable,1661 Knott Ave,La Mirada,CA,90638</address>
             <status>En Route</status>
             <dateTime>2019-10-12 00:04:21.0</dateTime>
             <statusLocation>PONTIAC,MI</statusLocation>
        </mailPiece>
     </tracking>...
Code:

    import xml.etree.ElementTree as ET
    from xml.etree.ElementTree import Element, SubElement
    
    tree = ET.parse('mailings.xml')
    root = tree.getroot()
    print(root.tag)
    
    for x in root[1].findall('job'):
        id=x.find('id').text
        tracking=x.find('tracking').text
        print(root[1].tag,id,tracking)

该脚本当前返回以下内容:

职位 5654206 无 职位 5654203 无

标签: pythonxml

解决方案


推荐阅读