2024-04-23 10:51:36 发布
网友
我正在使用lxml从头开始创建一个XML文件; 有这样的代码:
from lxml import etree root = etree.Element("root") root.set("interesting", "somewhat") child1 = etree.SubElement(root, "test")
如何使用ElementTree类的write()方法将根Element对象写入xml文件?
ElementTree
write()
Element
你可以试试下面的代码。
from lxml import etree as ET root = ET.Element('Doc') level1 = ET.SubElement(root, 'S') main = ET.SubElement(level1, 'Text') main.text = 'Thanks for contributing an answer to Stack Overflow!' second = ET.SubElement(level1, 'Tokens') level2 = ET.SubElement(second, 'Token', word=u"low") level3 = ET.SubElement(level2, 'Morph') second1 = ET.SubElement(level3, 'Lemma') second1.text = 'sdfs' second1 = ET.SubElement(level3, 'info') second1.text = 'qw' level4 = ET.SubElement(level3, 'Aff') second1 = ET.SubElement(level4, 'Type') second1.text = 'sdfs' second1 = ET.SubElement(level4, 'Suf') second1.text = 'qw' tree = ET.ElementTree(root) tree.write('output.xml', pretty_print=True, xml_declaration=True, encoding="utf-8")
这里有一个简洁的答案
from lxml import etree root = etree.Element("root") root.set("interesting", "somewhat") child1 = etree.SubElement(root, "test") my_tree = etree.ElementTree(root) with open('./filename', 'wb') as f: f.write(etree.tostring(my_tree))
您只需将节点放在一个新树中并将其写入磁盘。也适用于xpath搜索生成的HtmlElements。
HtmlElements
您可以从元素中获取一个字符串,然后从lxml tutorial中写入该字符串
str = etree.tostring(root, pretty_print=True)
或转换为元素树
et = etree.ElementTree(root) et.write(sys.stdout, pretty_print=True)
你可以试试下面的代码。
这里有一个简洁的答案
您只需将节点放在一个新树中并将其写入磁盘。也适用于xpath搜索生成的
HtmlElements
。您可以从元素中获取一个字符串,然后从lxml tutorial中写入该字符串
或转换为元素树
相关问题 更多 >
编程相关推荐