繁体   English   中英

在 Python 中使用 ElementTree API 将 xml 元素作为嵌套元素插入

[英]Insert xml element as nested element using ElementTree API in Python

我必须修改 XML 文档。 我正在使用 Python 和 ElementTree API 。 但我遇到了障碍。 现在的结构是这样的:

<A>
    <B>
        <C>
            <...>
            </...>
        </C>
    </B>
</A>

我必须向 B 添加一个子元素 B2 ,它是 C 的父元素,这样新的结构是:

<A>
    <B>
        <B2>
            <C>
                <...>
                </...>
            </C>
        </B2>
    </B>
</A>

现在,当我尝试添加一个子元素时,它正在创建一个子元素,但不是 C 的父元素,新元素将作为 B 中的一个单独元素出现。任何人都可以帮助我并给我一些关于如何创建子元素的指示作为另一个元素的父级?

提前致谢。

这是使用字符串连接的一种不明智的方法,仅供您参考。

from simplified_scrapy import SimplifiedDoc,req,utils
html = '''
<A>
    <B>
        <C>
            <...>
            </...>
        </C>
    </B>
</A>
'''
doc = SimplifiedDoc(html)
c = doc.select('C')
html = doc.html[0:c._start]+"<B2>"+c.outerHtml+"</B2>"+doc.html[c._end:]
print(html)

结果:

<A>
    <B>
        <B2><C>
            <...>
            </...>
        </C></B2>
    </B>
</A>

这里有更多例子。 https://github.com/yiyedata/simplified-scrapy-demo/blob/master/doc_examples/element.py

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM