Форум сайта python.su
0
Есть вот такой xml:
<?xml version="1.0"?>
<rootnode>
<node id="1">bla-bla-bla</node>
<node id="2">bla-bla-bla</node>
<node id="3">bla-bla-bla</node>
</rootnode>
from xml.etree import ElementTree
doc = ElementTree.parse("file.xml")
for node in doc.getroot().findall("node"):
if node.attrib["id"] == "2":
print node.text
break
Офлайн
36
XPATH Вам в помощь :)
from xml.etree import ElementTree as ET
dom = ET.parse("file.xml").getroot()
node = dom.find("node[@id='2']")
if node is not None:
print(node.text)
Офлайн
0
Я бы с удовольствием воспользовался xpath'ом, но у меня питон 2.6.4 в котором ElementTree 1.2, а не 1.3, который таких xpath'ов не умеет. http://effbot.org/zone/element-xpath.htm
Использовать сторонние библиотеки не хочу, хочется обойтись стандартными. Есть еще варианты?
Отредактировано (Июль 15, 2010 18:36:09)
Офлайн
0
Vaderрегулярные выражения справятся с твоей задачей на ура
Есть еще варианты?
Офлайн
0
dimabestПохоже, что это единственный вариант при использовании стандартной библиотеки. Ну да ладно, регекспы, так регекспы…
регулярные выражения справятся с твоей задачей на ура
Офлайн