LXML tostring — отключить перенос html в

#python #html #lxml #lxml.html

Вопрос:

Я использую lxml для добавления/удаления/обновления тегов во html фрагменте. Проблема в том , что когда я звоню tostring , html фрагмент кода упаковывается в <html><body>... теги.

Есть ли способ предотвратить такое поведение?

 import lxml.etree

html = "<html><body><tag></tag><div id="1"><p>Text</p></div></body></html>"
root = lxml.etree.fromstring(html,parser=lxml.etree.HTMLParser())
div = root.xpath('//div[@id="1"]')[0]
new_html = lxml.etree.tostring(div,encoding=str)
print(new_html)

>>> <html><body><div><p>Text</p></div></body></html>
 

Комментарии:

1. Не может размножаться. Я получаю <div id="1"><p>Text</p></div> . Обратите внимание, что id="1" id='1' для запуска фрагмента кода его необходимо изменить на.