Erhalten Xpath dynamisch, mit ElementTree getpath()

Schreiben brauche ich eine dynamische Funktion, die feststellt, Elemente auf einer Teilstruktur eine ATOM-xml-durch den Aufbau dynamisch der XPath für das element.

Zu tun, die ich geschrieben habe, so etwas wie dieses:

    tree = etree.parse(xmlFileUrl)
    e = etree.XPathEvaluator(tree, namespaces={'def':'http://www.w3.org/2005/Atom'})
    entries = e('//def:entry')
    for entry in entries:
        mypath = tree.getpath(entry) + "/category"
        category = e(mypath)

Den code oben nicht finden "Kategorie", weil getpath() gibt einen XPath-ohne namespaces, in der Erwägung, dass die XPathEvaluator e() erfordert namespaces.

Obwohl ich weiß, dass ich verwenden können Sie den Pfad und geben Sie einen namespace im Aufruf von XPathEvaluator, ich würde gerne wissen, ob es möglich ist, getpath() Rückgabe eines "fully qualified" - Pfad, mit allen namespaces, wie dies ist praktisch, in bestimmten Fällen.

(Dies ist ein spin-off Frage von meiner früheren Frage: Python-XpathEvaluator ohne namespace)

InformationsquelleAutor puntofisso | 2012-10-30
Schreibe einen Kommentar