我有一个xml文件,我需要从中获取一些标记以供使用,这些标记的数据如下:
<?xml version="1.0"?>
<data>
<country name="Liechtenstein">
<rank>1</rank>
<year>2008</year>
<gdppc>141100</gdppc>
<neighbor name="Austria" direction="E"/>
<neighbor name="Switzerland" direction="W"/>
</country>
<country name="Singapore">
<rank>4</rank>
<year>2011</year>
<gdppc>59900</gdppc>
<neighbor name="Malaysia" direction="N"/>
</country>
<country name="Panama">
<rank>68</rank>
<year>2011</year>
<gdppc>13600</gdppc>
<neighbor name="Costa Rica" direction="W"/>
<neighbor name="Colombia" direction="E"/>
</country>
</data>
<?xml version="1.0"?>
<data>
<country name="Liechtenstein1">
<rank>1</rank>
<year>2008</year>
<gdppc>141100</gdppc>
<neighbor name="Austria1" direction="E"/>
<neighbor name="Switzerland1" direction="W"/>
</country>
<country name="Singapore">
<rank>4</rank>
<year>2011</year>
<gdppc>59900</gdppc>
<neighbor name="Malaysia1" direction="N"/>
</country>
<country name="Panama">
<rank>68</rank>
<year>2011</year>
<gdppc>13600</gdppc>
<neighbor name="Costa Rica" direction="W"/>
<neighbor name="Colombia" direction="E"/>
</country>
</data>
我需要解析这个,所以我使用了:
^{pr2}$这段代码在第2行出错:xml.etree.ElementTree.ParseError: junk after document element:
我想这是因为有多个xml标记,你知道吗,我应该如何解析它?在
如果您需要,这段代码将填充一种方法的详细信息。在
代码监视“累积的”xml,直到遇到另一个xml文档的开头或文件的结尾。当它有一个完整的xml文档时,它调用
display
来练习lxml
库来解析文档并报告一些内容。在过滤整个文件并拆分为有效的
<?xml ...
块。创建
myfile_01, myfile_02 ... myfile_nn
。在如果您希望所有
^{pr2}$<country>
在一个XML Tree
中:用Python:3.4.2测试
我使用了一个简单的技巧来解析这种伪XML(Wazuh rule files)来说明它的重要性——只是暂时将它包装在一个伪元素
<whatever></whatever>
中,从而在所有这些“根”上形成一个根。在在您的情况下,不要使用像这样的无效XML:
在将其传递给解析器之前,将其临时重写为:
^{pr2}$然后像往常一样解析它并迭代
<data>
元素。在相关问题 更多 >
编程相关推荐