2011-10-25 5 views
1

다음과 같은 XML이 있습니다.minidom을 사용하여 속성을 갖는 XML 태그의 값을 읽는 방법

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

다음 파이썬 코드를 사용하고 있습니다.

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

의 텍스트 노드를 사용 myelement 당신은'XML을 사용할 수없는 이유가 있습니다 : NB에서 텍스트 만 있으면 그래서 마지막 줄은 정말

[][0].toxml() 

입니다. etree.ElementTree' 또는 우수한 lxml 라이브러리? 파이썬이 훌륭한 대안을 가지고있을 때 여전히 사람들이 DOM을 사용하고있는 것을 보게됩니다. – mikerobi

답변

1

nb : myelement 요소가 nb : myelement에 없습니다. 바로이 요소

sub.firstChild.nodeValue 
관련 문제