Python - 使用ElementTree对XML文件进行数据分析

时间:2017-03-28 10:18:42

标签: python xml python-2.7 xml-parsing elementtree

这将是一个相当长的问题,因为我的问题非常具体,需要一些解释,所以很抱歉。

我有一个包含多个' spreekbeurten'的XML文件。我想从spreekbeurten获得所有文本,问题是一些spreekbeurten没有一个&al-group'还有一些。 (请参阅下面的代码,例如xml文件的一部分)

[HttpPost]
public ActionResult Update(String id, String state, String note)
{
}

我想获得spreker他的' voorvoegsel'和' achternaaam'与发言者的相应文本。为此,我编写了以下代码:

  <handelingen>
      <spreekbeurt nieuw="ja">
        <spreker>   
          <voorvoegsels>De heer</voorvoegsels>
          <naam>
            <achternaam>Recourt</achternaam>
          </naam> (<politiek>PvdA</politiek>):</spreker>
        <tekst status="goed">
          <al-groep>
                <al>Much</al>
                <al>Very</al>
                <al>Hungry</al>
                <al>I am</al>
                <al>Hello.</al>
              </al-groep>
            </tekst>
          </spreekbeurt>

      <spreekbeurt nieuw="nee">
        <spreker>
          <voorvoegsels>De heer</voorvoegsels>
          <naam>
            <achternaam>Van Raak</achternaam>
          </naam> (<politiek>SP</politiek>):</spreker>
        <tekst status="goed">
          <al>Just one word</al>
        </tekst>
      </spreekbeurt>

  </handelingen>

问题是,如果&#39; spreekbeurt&​​#39;包含一个&#39; al-group&#39;我只得到第一个&#39; al&#39;这是一个例子&#39; Much&#39;而不是所有其他的话。我如何确保如果“spreekbeurt”#39;包含我选择&#39; al&#39;中的所有文字。陈述而不仅仅是第一个?

提前致谢!

1 个答案:

答案 0 :(得分:0)

我相信你的回答是xml.etree.ElementTree.Element.findall。 然后,将结果放入列表中,并检查列表是否为无元素。