Finden Sie das Vorkommen mit mehreren Attributen in ElementTree / Python

8

Ich habe das folgende XML.

%Vor%

F: Wie finde ich den Knoten <testcase name="VHDL_BUILD_Passthrough" status="run" time="0" classname="TestOne" /> ? Ich finde die Funktion tree.find() , aber der Parameter für diese Funktion scheint Elementname.

Ich muss den Knoten basierend auf dem Attribut finden: name = "VHDL_BUILD_Passthrough" AND classname="TestOne" .

    
prosseek 26.01.2011, 19:02
quelle

2 Antworten

17

Dies hängt davon ab, welche Version Sie verwenden. Wenn Sie ElementTree 1.3+ (einschließlich in der Python 2.7-Standardbibliothek) haben, können Sie einen einfachen xpath-Ausdruck verwenden, wie in den Dokumenten beschrieben / a>, wie [@attrib=’value’] :

%Vor%

Leider, wenn Sie eine frühere Version von ElementTree (1.2, in der Standardbibliothek für Python 2.5 und 2.6 enthalten) verwenden, können Sie diese Bequemlichkeit nicht nutzen und müssen sich selbst filtern.

%Vor%     
chmullig 26.01.2011, 19:57
quelle
0

Sie müssen die <testcase /> Elemente, die Sie haben, wie folgt durchlaufen:

%Vor%     
Santa 26.01.2011 19:50
quelle

Tags und Links