It's a tree, and there may be nested elements. Try:
def innerText(self, sep=''):
t = ""
for curNode in self.childNodes:
if (curNode.nodeType == Node.TEXT_NODE):
t += sep + curNode.nodeValue
elif (curNode.nodeType == Node.ELEMENT_NODE):
t += sep + curNode.innerText(sep=sep)
return t