2014-11-14 5 views
1

У меня есть XML, который я бы хотел разобрать, а затем отправить результат в txt-файл.разбор XML в Python

XML-файл построен из блоков, как это одна:

<rpc-reply message-id="12" 
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> 
<user-stats> 
<allocated-user-count>10</allocated-user-count> 
<current-user-count>3</current-user-count> 
<max-active-user-count-24hrs>2</max-active-usercount- 
24hrs> 
<min-active-user-count-24hrs>0</min-active-usercount- 
24hrs> 
</user-stats> 
</rpc-reply> 

Все блоки будут начинаться с и и с

Я хотел бы, чтобы удалить все теги и получить результаты по линии и скопируйте их в текстовый файл. Например:

allocated user count <tab> current-user-count <tab> max-user-count 
    100 <tab> 1<tab> 2<tab> 
    100 <tab> 0<tab> 2<tab> (info taken from the second RPC block) 

и т.д.

Есть ли способ, что я могу это сделать?

ответ

1

Для этого вы можете использовать модуль xmltodict.

Вам нужно будет установить его с помощью

pip install xmltodict 

После того как вы, просто сделать

import xmltodict 
data = xmltodict.parse(xmldata) 

Это даст вам ранний проходимую питона Dict, которые вы можете использовать, чтобы получить требуемые значения.

0

Да, есть способы, которыми вы можете это сделать.

Наиболее доступным будет использование XML Processing Modules, включенного в стандартную библиотеку Python, для чтения XML, а затем use a text file object для вывода в текстовый файл после выполнения вашей обработки.

Смежные вопросы