编程语言
首页 > 编程语言> > python libXML2删除项

python libXML2删除项

作者:互联网

我在python下使用libxml2.不幸的是,这个库的python版本真的很难记录,我在网上创建了几个例子,我可以理解一些方法.

我管理了很快添加一个XML节点.由于这个元素应该替换现有的元素,我想删除之前的一个,但我找不到删除孩子的方法.

有谁知道方法名称是什么?有没有人有关于这个图书馆的体面文件?

干杯

解决方法:

您可以使用unlinkNode()方法删除给定节点.通常,大多数适用于节点的方法都有记录,请尝试:

pydoc libxml2.xmlNode

对于unlinkNode,文档说:

unlinkNode(self)
    Unlink a node from it's current context, the node is not
    freed

例如,给定此输入:

<html>
  <head>
    <title>Document Title</title>
  </head>
  <body>
    <div id="content">This is a test.</div>
  </body>
</html>

您可以像这样解析文件:

>>> import libxml2
>>> doc = libxml2.parseFile('input.html')

找到< div>像这样的节点:

>>> node = doc.xpathEval('//*[@id="content"])[0]

并删除它像这样:

>>> node.unlinkNode()

现在,如果您打印出文档,您会得到:

>>> print doc
<head>            
    <title>Document Title</title>
</head>
<body>

</body>
</html>

标签:libxml2,removechild,python
来源: https://codeday.me/bug/20190826/1732805.html