Вы передаете узлы title
getText
, чьи nodeType
не node.TEXT_NODE
.Вместо этого вам нужно перебрать все дочерние элементы узла в вашем getText
методе:
def getTextSingle(node):
parts = [child.data for child in node.childNodes if child.nodeType == node.TEXT_NODE]
return u"".join(parts)
def getText(nodelist):
return u"".join(getTextSingle(node) for node in nodelist)
Еще лучше, вызвать node.normalize()
перед вызовом getTextSingle
, который гарантирует, что последовательные дочерние элементы типа node.TEXT_NODE
объединены в один node.TEXT_NODE
.