2011-10-25 11 views
1

私はこのようなXMLを持っています。ミニドームを使用して属性を持つXMLタグの値を読み取る方法

<nb:myelement param='oxygen'>Value</nb:element> 

私は次のPythonコードを使用しています。

for sub in dom.getElementsByTagName('nb:myelement'): 
    if(sub.getAttributeNode("param").nodeValue == 'oxygen'): 
     value = sub.getElementsByTagName('nb:myelement')[0].toxml() 

最後の行はindex out of range execptionです。属性を持つタグで囲まれた '値'を取得するにはどうすればよいですか?

+0

あなたは 'XMLを使用することはできません理由がありますです。 etree.ElementTree'または優れたlxmlライブラリですか? Pythonにこのような優れた選択肢がある場合でも、DOMを使用している人々がいるのを見て苦労します。 – mikerobi

答えて

1

nb:myelementの要素は、nb:myelementにはありません。 NB内のテキストだけがあるので、もし最後の行は本当に

[][0].toxml() 

です:MYELEMENT、ちょうどこの要素のテキストノードを使用し

sub.firstChild.nodeValue 
関連する問題