如何删除或删除server1的所有条目,包括标签?我尝试使用etree删除功能,但它没有帮助
<header> <main> <footer>
答案 0 :(得分:3)
需要父对象从HTML / XML中删除其子对象。
使用getparent()
方法获取父级,然后使用remove()
方法删除其chid标记。
<强>演示强>:
>>> import lxml.etree as PARSER
>>> root = PARSER.fromstring(data)
>>> root.xpath("//hosts/host[@name='server1']")
[<Element host at 0xb6d2ce6c>]
>>> a = root.xpath("//hosts/host[@name='server1']")
>>> for i in a:
... pp = i.getparent()
... pp.remove(i)
...
>>> PARSER.tostring(root, method="xml")
A。 find
返回None
以下代码的对象。
>>> thingy = root.find('hosts')
>>> thingy
这应该是thingy = root.find('host')
B。使用xpath
方法获取目标代码。