2010-08-15 141 views
1

我正試圖檢索div中的所有值。 例如:獲取當前節點的所有子節點的值

<div>xyz <span> abc </span> def</div> 

這是代碼

the_page="<div>xyz <span> abc </span> def</div>" 
doc = libxml2dom.parseString(the_page, html=1) 
divs=doc.getElementsByTagName("div") 
print divs[0].firstChild.nodeValue 

這僅打印 「XYZ」。我試圖打印div [0] .nodeValue,但是這給了我一個錯誤。 我想要所有的文字。我將如何解決這個問題?

+0

請使用返回錯誤值的Python源代碼擴展您的問題。 – pts 2010-08-15 18:11:17

+0

你嘗試過'textContent'嗎? – 2010-08-15 18:24:23

+0

「值」是指節點還是文本? – habnabit 2010-08-15 18:24:58

回答

1

您:

divs=doc.getElementsByTagName("div") 

使用:

childs = divs[0].childNodes 

然後,你可以抓取。每個孩子都包含孩子和節點的列表值

for child in childs : 
    if child.childNode == []: 
     print child.nodeValue 
    else : 
     ## Recurse