python - 如何将 < 转换为 < in lxml,Python?

标签 python lxml

有一个xml文件:

<body>
    <entry>
         I go to <hw>to</hw> to school.
    </entry>
</body>

出于某种原因,我更改了<hw>&lt;hw&gt;</hw>&lt;/hw&gt;在使用 lxml 解析器解析它之前。

<body>
    <entry>
         I go to &lt;hw&gt;to&lt;/hw&gt; to school.
    </entry>
</body>

但是修改解析后的xml数据后,我想得到一个<hw>元素,不是 &lt;hw&gt; .我该怎么做?

最佳答案

先找一个unescape函数:

from xml.sax.saxutils import unescape

entry=body[0]

取消转义并替换为原来的:

body.replace(entry, e.fromstring(unescape(e.tounicode(entry))))

关于python - 如何将 < 转换为 < in lxml,Python?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14659423/

相关文章:

javascript - POST 值到 cgi 文件但不更新网页

python - 为什么 getparent() 没有按预期工作?

python - 为什么 LXML Write 不能很好地打印到新文件?

python - 如何检查lxml元素树字符串?

python - 调用 ensure_future 是包装协程结果的正确方法吗?

python - 属性错误 : 'MLPClassifier' object has no attribute 'decision_function'

python - 在 Python 中使用回调时出错

python - 根据二维 numpy 数组中零值的坐标在矩阵中的位置将其分组到列表中

xpath - scrapy:从 xpath 选择器中删除元素

Python lxml - 返回空列表