2016-04-12 2 views
2

Я использую lxml и python для управления файлами xml. Я хочу создать текстовый узел без меток, а не создавать новый Element, а затем добавить к нему текст. Как я могу это сделать?Как создать текстовый узел с lxml?

Я мог бы найти эквивалент этого в пакете python xml.dom.minidom под названием createTextNode, поэтому мне было интересно, поддерживает ли lxml такую ​​же функциональность или нет?

ответ

3

Похоже, lxml не предоставляет специальный API для создания текстового узла. Вы можете просто установить свойство text родительского элемента для создания или изменения текстового узла в этом элементе, например:

>>> from lxml import etree 
>>> raw = '''<root><foo/></root>''' 
>>> root = etree.fromstring(raw) 
>>> root.text = 'bar' 
>>> etree.tostring(root) 
'<root>bar<foo/></root>'