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

问题描述 投票:-1回答:1

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

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

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

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

现在当我尝试添加一个子元素时,它正在创建一个子元素,但不是作为C的父元素,新的子元素是作为一个单独的元素在B中出现的。

先谢谢你。

python xml elementtree
1个回答
0
投票

这是个不明智的方法 只为你的参考而使用字符串连接。

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.comyiyedatasimplified-scrapy-demoblobmasterdoc_exampleselement.py。

© www.soinside.com 2019 - 2024. All rights reserved.