python - 如何使用 Python LXML 重命名节点?

标签 python xml lxml lxml.html

如何使用 LXML 重命名节点?

具体来说,如何重命名父节点,即 <body>标记同时保留所有底层结构?

我正在使用 lxml.html 进行解析模块,但据推测,在 lxml.html.HtmlElement 之间重命名方面,xml 和 html 之间应该没有任何区别。及其对应的 XML。

我已经在 LXML 搜索了文档站点,但没有找到任何关于重命名节点的引用。

最佳答案

一旦你有了 <body>元素,只需更改其 tag属性。

import lxml.etree
import lxml.html

doc = lxml.html.fromstring("<html><body><p></body></html>")
body = doc.find('body')
body.tag = "body-not"
print(lxml.etree.tostring(doc))

这打印

b'<html><body-not><p/></body-not></html>'

关于python - 如何使用 Python LXML 重命名节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36458942/

相关文章:

python - Django 上下文处理器不工作?

python - 如何在保持所有其他警告正常的同时摆脱 python 中的特定警告消息?

java - 如何将带有标签的字符串转换为xml?

python - 使用 lxml 模块获取 XML 属性值

python - sqlalchemy 无法删除表

python - 如何将参数传递给第一个参数为self的python函数?

python - 如何使用Python获取域中的所有链接?

Python:读取文件时创建各种文件对象

java - Android "Header"文本

java - 将新的 XML 节点保存到文件