def _getNextText(element): while element is not None: if lxmlutil.isVisibleElement(element) and element.text: return element.text.strip() elif element.tail: return element.tail.strip() element = lxmlutil.getFullNext(element) return None
def _getChildTextLength(element): result = 0 for item in element.getchildren(): if lxmlutil.isVisibleElement(item): result += _getParagraphLengthByLink(item) if item.tail: result += len(item.tail.strip()) return result
def _getMaxChildTag(element): result = {} for item in element.getchildren(): textlen = 0 if lxmlutil.isVisibleElement(item): textlen += _getParagraphLengthByLink(item) if item.tail: textlen += len(item.tail.strip()) if item.tag in result: result[item.tag] += textlen else: result[item.tag] = textlen return max(result.iterkeys(), key=(lambda key: result[key]))