特定注释后的Python XML处理

特定注释后的Python XML处理,python,xml,minidom,Python,Xml,Minidom,我有一个基于外部数据源保持XML文件最新的自动化过程。此XML文件也可以由用户修改,需要维护用户的手动更改 <Nodes> <!-- User added data goes here --> <Node name="1">Data Data Data</Node> <Node name="2">Data Data Data</Node> <Node name="3">Data D

我有一个基于外部数据源保持XML文件最新的自动化过程。此XML文件也可以由用户修改,需要维护用户的手动更改

<Nodes>
    <!-- User added data goes here -->
    <Node name="1">Data Data Data</Node>
    <Node name="2">Data Data Data</Node>
    <Node name="3">Data Data Data</Node>

    <!-- AUTOMATEDSTUFF -->
    <!-- User, do not modify nodes below this line. -->
    <Node name="4">Data Data Data</Node>
    <Node name="5">Data Data Data</Node>
    <Node name="6">Data Data Data</Node>

</Nodes>

如何在遇到注释后才开始查找节点?

在XML中,注释就是注释,可以在任何处理阶段从文档中正确地剥离出来。您应该调整程序以添加一个特殊属性,如

<Nodes>
    <!-- User added data goes here -->
    <Node name="1">Data Data Data</Node>
    <Node name="2">Data Data Data</Node>
    <Node name="3">Data Data Data</Node>

    <!-- User, do not modify nodes below this line. -->
    <Node name="4" from="autogenerated">Data Data Data</Node>
    <Node name="5" from="autogenerated">Data Data Data</Node>
    <Node name="6" from="autogenerated">Data Data Data</Node>
</Nodes>

在XML中,注释就是注释,可以在任何处理阶段从文档中正确地剥离出来。您应该调整程序以添加一个特殊属性,如

<Nodes>
    <!-- User added data goes here -->
    <Node name="1">Data Data Data</Node>
    <Node name="2">Data Data Data</Node>
    <Node name="3">Data Data Data</Node>

    <!-- User, do not modify nodes below this line. -->
    <Node name="4" from="autogenerated">Data Data Data</Node>
    <Node name="5" from="autogenerated">Data Data Data</Node>
    <Node name="6" from="autogenerated">Data Data Data</Node>
</Nodes>
<Nodes>
    <!-- User added data goes here -->
    <Node name="1">Data Data Data</Node>
    <Node name="2">Data Data Data</Node>
    <Node name="3">Data Data Data</Node>

    <!-- User, do not modify nodes below this line. -->
    <Node name="4" from="autogenerated">Data Data Data</Node>
    <Node name="5" from="autogenerated">Data Data Data</Node>
    <Node name="6" from="autogenerated">Data Data Data</Node>
</Nodes>
xmldoc = minidom.parse(filename)
nodes = xmldoc.documentElement.childNodes
commentIdx = next(i for i,n in enumerate(nodes) if
                n.nodeType == n.COMMENT_ELEMENT and n.data == ' AUTOMATEDSTUFF ')
automatedNodes = nodes[commentIdx+1:]
print(automatedNodes) # or do something else with them