Найти - Пользователи
Полная версия: Извлечь текст с HTML-разметкой из DIVа
Начало » Python для новичков » Извлечь текст с HTML-разметкой из DIVа
1
DimonSP
Привет всем!
Прошу помочь разобраться в проблеме:
Парсится страница, нужный HTML-блок находится внутри тега DIV с конкретным именем.
Содержимое Дива успешно выдирается с помощью команды:
tag = html.xpath("//div").text_content()
Однако стирается вся HTML-разметка, а нам нужно наоборот оставить ВСЕ теги: br, p и др.

Кажется код при размещении сообщения искажается, поэтому см. прилепленную картинку.
py.user.next
Так ты не бери text_content() у найденного узла.
>>> import lxml.html
>>> 
>>> doc = lxml.html.fromstring('<a><b><c>d</c><e>f</e></b></a>')
>>> nodes = doc.xpath(r'//b/*')
>>> 
>>> text = ''.join(lxml.html.tostring(i, encoding='unicode')
...                for i in nodes)
>>> text
'<c>d</c><e>f</e>'
>>>
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB