2011-01-01 88 views

Respuesta

31

Encontrará la primera instancia de un elemento denominado bar y devolverá el valor del atributo key.

In [52]: import xml.etree.ElementTree as ET 

In [53]: xml=ET.fromstring(contents) 

In [54]: xml.find('./bar').attrib['key'] 
Out[54]: 'value' 
0

Su expresión:

./bar[@key]

Esto significa: bar niños que tienen key atributo

Si desea seleccionar el atributo, utilice esta expresión relativa:

bar/@key 

Es significa: el atributo key de los niños bar

Por supuesto, debe tener en cuenta al utilizar un motor de XPath totalmente compatible como lxml.

+1

No estoy seguro si es ElementTree o Google App Engine pero el uso de '@' plantea SyntaxError ("sintaxis de ruta no soportada (% s)"% op) SyntaxError: sintaxis de ruta no soportada (@) –

+0

@Will Merydith: Por favor, lea mi última frase. La API básica de 'ElementTree' no es una queja completa del motor XPath ... –

+0

OK. Veré si puedo encontrar un módulo que funcione en GAE/Py2.5.5. –

Cuestiones relacionadas