Segfaulting при попытке разобрать с lxml

У меня есть этот простой скрипт Python, который выглядит так:

import sys 
from lxml import etree

tree = etree.parse('gdpdefl.xml')

Но это segfaults, поэтому, после некоторого поиска в Google, я подумал, что мой XML-документ может быть поврежден, поэтому я попробовал это:

import sys
from lxml import etree

parser = etree.HTMLParser()
tree = etree.parse('gdpdefl.xml', parser)

Это также сегментировано. Вот пример документа xml, который я пытаюсь проанализировать:

<?xml version="1.0" encoding="utf-8"?> <Root xmlns:wb="http://www.worldbank.org">   <data>
    <record>
      <field name="Country or Area" key="ARB">Arab World</field>
      <field name="Item" key="NY.GDP.DEFL.KD.ZG">Inflation, GDP deflator (annual %)</field>
      <field name="Year">1960</field>
      <field name="Value" />
    </record>
    <record>
      <field name="Country or Area" key="ARB">Arab World</field>
      <field name="Item" key="NY.GDP.DEFL.KD.ZG">Inflation, GDP deflator (annual %)</field>
      <field name="Year">1961</field>
      <field name="Value" />
    </record> 
    <record>
      <field name="Country or Area" key="ZWE">Zimbabwe</field>
      <field name="Item" key="NY.GDP.DEFL.KD.ZG">Inflation, GDP deflator (annual %)</field>
      <field name="Year">2011</field>
      <field name="Value">21.1562931758805</field>
    </record>
  </data>
</Root>

Если у меня есть неправильно сформированный xml здесь, каков будет лучший способ вывести все строки Country, Item, Year и Values ​​из этого файла в списки?

0 ответов

Другие вопросы по тегам