Все еще изучаю lxml. Я обнаружил, что иногда я не могу получить текст элемента из дерева, используя item.text. Если я использую item.text_content (), я в порядке. Я не уверен, что я понимаю, почему еще. Любые советы будут оценены
Хорошо, я не уверен, как именно привести пример, не заставляя вас обращаться с файлом:
вот код, который я написал, чтобы понять, почему я не получил ожидаемый текст:
theTree=html.fromstring(open(notmatched[0]).read())
text=[]
text_content=[]
notText=[]
hasText=[]
for each in theTree.iter():
if each.text:
text.append(each.text)
hasText.append(each) # list of elements that has text each.text is true
text_content.append(each.text_content()) #the text for all elements
if each not in hasText:
notText.append(each)
Итак, после этого я смотрю на
>>> len(notText)
3612
>>> notText[40]
<Element b at 26ab650>
>>> notText[40].text_content()
'(I.R.S. Employer'
>>> notText[40].text