При этом используются функции очистки lxml, но предотвращается оборачивание результата в элемент HTML.
import lxml
doc = lxml.html.document_fromstring(str)
cleaner = lxml.html.clean.Cleaner(allow_tags=[''], remove_unknown_tags=False)
str = cleaner.clean_html(doc).text_content()
или в виде одного элемента
lxml.html.clean.Cleaner(allow_tags=[''], remove_unknown_tags=False).clean_html(lxml.html.document_fromstring(str)).text_content()
Работает путем анализа html.вручную в объект документа, и передать его классу уборщика.Таким образом, clean_html также возвращает объект, а не строку.Затем текст можно восстановить без элемента-оболочки, используя метод text_content ().