0

XMLファイルを解析しています。DOM パーサーを使用しています。タグ Layer の 3 つの子ノードがありますが、7 つの子ノードを取得しています。4 つの子ノードはすべて空です。正しい数の子ノードを取得していない場合、子ノードを解析するにはどうすればよいですか。

私のXMLファイルコードスニペットは

<Layer Description="" MinZoom="1" MaxZoom="1000000000" Visible="3" RemotHostType="LocalFile" RemotHost="" FolderName="GATE POST" Path="" LayerStatus="ReadWrite">
            <ParamList>
                <DrawingParam LineColor="-11179217" FillColor="-16751616" SelectedLineColor="-16744448" LineType="0" LineWidth="1" IconType="0" Options="0" ZoomLimit="9E+99" LayerType="1" />
                <DrawingParam LineColor="1" FillColor="1" SelectedLineColor="1" LineType="1" LineWidth="1" IconType="1" Options="1" ZoomLimit="1" LayerType="1" />
            </ParamList>
            <TextParamList>
                <TextParam FieldIndex="-1" FontName="Arial" Bold="0" Italic="0" StrikeOut="0" TextAngle="0" TextColor="-16777216" TextFontSize="12" TextPosition="1" Underline="0" MinZoom="1" MaxZoom="1000000000" ShowText="False" FontFector="100000" />
            </TextParamList>
            <Regions>
                <Region ID="0" FileName="GATE POST.ogl" FilePath="" FileType="OGL" RemotHost="" RemotHostType="LocalFile" />
            </Regions>GATE POST</Layer>
4

1 に答える 1

1

7 つの子には、3 つの改行と GATE POST が含まれます。3 つの特定の子が必要な場合は、ノード タイプに基づいてフィルタリングします。Pythonでは、これを行います:-

   from xml.dom.minidom import parseString
   for child in dom.documentElement.childNodes:
      if child.nodeType == child.ELEMENT_NODE:
         print child

これは与える :-

$ python test.py
<DOM Element: ParamList at 0x10c124a28>
<DOM Element: TextParamList at 0x10bfb0ab8>
<DOM Element: Regions at 0x10bfb98c0>
于 2013-07-23T10:02:31.513 に答える