[Python] trying to pull an value out of xml using xml.etree.ElementTree

Discussão em 'Python' iniciado por Stack, Fevereiro 13, 2025.

  1. Stack

    Stack Membro Participativo

    I have the following xml:

    <multi-routing-engine-results>
    <multi-routing-engine-item>
    <re-name>node0</re-name>
    <source-resource-usage-pool-information>
    <resource-usage-entry style="all-pat-pool">
    <resource-usage-pool-name>pool_192_168_1_113</resource-usage-pool-name>
    <resource-usage-total-pool-num>57</resource-usage-total-pool-num>
    <resource-usage-port-ol-factor>1</resource-usage-port-ol-factor>
    <resource-usage-peak-usage>21%</resource-usage-peak-usage>
    <resource-usage-peak-date-time seconds="1736272550">2025-01-07 11:55:50 CST</resource-usage-peak-date-time>
    <resource-usage-total-address>1</resource-usage-total-address>
    <resource-usage-total-used>7741</resource-usage-total-used>
    <resource-usage-total-avail>56771</resource-usage-total-avail>
    <resource-usage-total-total>64512</resource-usage-total-total>
    <resource-usage-total-usage>11%</resource-usage-total-usage>
    </resource-usage-entry>
    <resource-usage-entry style="all-pat-pool">
    <resource-usage-pool-name>pool_192_168_1_114</resource-usage-pool-name>
    <resource-usage-total-pool-num>57</resource-usage-total-pool-num>
    <resource-usage-port-ol-factor>1</resource-usage-port-ol-factor>
    <resource-usage-peak-usage>8%</resource-usage-peak-usage>
    <resource-usage-peak-date-time seconds="1734024324">2024-12-12 11:25:24 CST</resource-usage-peak-date-time>
    <resource-usage-total-address>1</resource-usage-total-address>
    <resource-usage-total-used>2520</resource-usage-total-used>
    <resource-usage-total-avail>61992</resource-usage-total-avail>
    <resource-usage-total-total>64512</resource-usage-total-total>
    <resource-usage-total-usage>3%</resource-usage-total-usage>
    </resource-usage-entry>
    <resource-usage-entry style="all-pat-pool">
    <resource-usage-pool-name>gos_src_pool_207_195_114_101</resource-usage-pool-name>
    <resource-usage-total-pool-num>57</resource-usage-total-pool-num>
    <resource-usage-port-ol-factor>1</resource-usage-port-ol-factor>
    <resource-usage-peak-usage>32%</resource-usage-peak-usage>
    <resource-usage-peak-date-time seconds="1733419670">2024-12-05 11:27:50 CST</resource-usage-peak-date-time>
    <resource-usage-total-address>1</resource-usage-total-address>
    <resource-usage-total-used>15115</resource-usage-total-used>
    <resource-usage-total-avail>49397</resource-usage-total-avail>
    <resource-usage-total-total>64512</resource-usage-total-total>
    <resource-usage-total-usage>23%</resource-usage-total-usage>
    </resource-usage-entry>
    <resource-usage-entry style="all-pat-pool">
    <resource-usage-pool-name>gos_src_pool_207_195_114_103</resource-usage-pool-name>
    <resource-usage-total-pool-num>57</resource-usage-total-pool-num>
    <resource-usage-port-ol-factor>1</resource-usage-port-ol-factor>
    <resource-usage-peak-usage>19%</resource-usage-peak-usage>
    <resource-usage-peak-date-time seconds="1739283197">2025-02-11 08:13:17 CST</resource-usage-peak-date-time>
    <resource-usage-total-address>1</resource-usage-total-address>
    <resource-usage-total-used>7920</resource-usage-total-used>
    <resource-usage-total-avail>56592</resource-usage-total-avail>
    <resource-usage-total-total>64512</resource-usage-total-total>
    <resource-usage-total-usage>12%</resource-usage-total-usage>
    </resource-usage-entry>
    </source-resource-usage-pool-information>
    </multi-routing-engine-item>
    </multi-routing-engine-results>


    then I tried to parse out all the pool_192_168_1_ valuesbut this fails and returns nothing, any ideas?

    outputxml1 = etree.tostring(rpc_xml, encoding='unicode')
    root = ET.fromstring(outputxml1)

    x = 1
    for item in root.findall('./multi-routing-engine-results/multi-routing-engine-item/re-name/source-resource-usage-pool-information/resource-usage-pool-name'):
    print(str(item))
    x = x + 1

    Continue reading...

Compartilhe esta Página