2015-01-19 6 views
0

Мне нужно получить текстовые значения из XML-файлов в Python.XML-анализ из файла в текст PYTHON

Мой фактический файл XML является:

<?xml version="1.0"?> 
<data> 
     <command>first</command> 
     <command>second</command> 
     <command>third</command> 
</data> 

мне нужно прочитать из файла, а затем получить выход, как:

first 
second 
third 

Im делает небольшой источник, как:

from xml.dom import minidom 
doc = minidom.parse("C:\ciao.xml") 
name = doc.getElementsByTagName("command")[0] 
print(name.firstChild.data) 

Но мне нужно получить все команды, а не только по одному

ответ

0

Используйте петлю for?

for name in doc.getElementsByTagName("command"): 
    print(name.firstChild.data) 

Если вам нужно сохранить их в списке использовать список понимание,

data = [i.firstChild.data for i in doc.getElementsByTagName("command")] 
+0

О, наконец, кто-то, кто помог мне. люблю тебя – stfugnao

+0

@stfugnao - пожалуйста, согласитесь, если вы сочтете это полезным :) – ComputerFellow

+0

Сделаем через 9 мин. – stfugnao

0

Вы можете использовать BeautifulSoup.

>>> from bs4 import BeautifulSoup 
>>> xml = """<?xml version="1.0"?> 
<data> 
     <command>first</command> 
     <command>second</command> 
     <command>third</command> 
</data>""" 
>>> soup = BeautifulSoup(xml, 'xml') 
>>> for i in soup.find_all('command'): 
    print(i.text) 


first 
second 
third 
Смежные вопросы