In [1]:
import xml.etree.ElementTree as ET
tree = ET.parse('demo.xml')
root = tree.getroot()
In [2]:
root
Out[2]:
In [3]:
ET.dump(root)
In [4]:
root.findall(".")
Out[4]:
In [5]:
root.findall("./book")
Out[5]:
In [6]:
for elemento in root.findall("./book"):
print (elemento.tag, elemento.attrib)
In [7]:
root[0][0][1].text
Out[7]:
In [8]:
root[3][1].text
Out[8]:
In [9]:
for elemento in root.findall(".//author"):
print (elemento.tag,elemento.find('first-name').text,elemento.find('last-name').text)
In [10]:
for elemento in root.findall(".//author"):
print (len(elemento))
try:
print (elemento.tag,elemento.find('./degree').text)
except:
print (elemento.tag,elemento.find('./first-name').text,elemento.find('last-name').text)
In [55]:
for elemento in root.findall(".//author"):
print (len(elemento))
try:
print (elemento.tag,elemento.find('./degree[@from="Harvard"]').text)
except:
print ("Este autor no tiene grado")
In [59]:
for elemento in root.findall(".//author"):
print (len(elemento))
try:
print (elemento.tag, elemento.find('./degree').attrib)
except:
print ("Este autor no tiene grado")
In [80]:
for elemento in root.findall('.//degree'):
print (elemento.text, elemento.get('from'))
In [72]:
for elemento in root.findall('.//*[@from="Harvard"]'):
print (elemento.text)
In [91]:
from lxml import etree
In [92]:
tree_lxml = etree.parse('demo.xml')
root_lxml = tree_lxml.getroot()
In [97]:
for elemento in root_lxml.findall('.//degree'):
print (elemento.text, elemento.get('from'))
In [ ]:
In [ ]: