как открыть большой XML файл и сохранить его в датафрейм на python

Имеется большой файл XML (более 1,5 Гб), вот ссылка на него: https://drive.google.com/file/d/1KI-75s6I2TfUKZT3XE5IMCxN5732p3Zy/view?usp=sharing Мне необходимо открыть этот файл и записать в датафрейм, чтобы в последующем по кусочкам сохранить его в эксель. Но при выполнении кода, пишет ошибку памяти. Подскажите пожалуйста как решить эту проблему.

#import xml.etree.ElementTree as ET
import xml.etree.cElementTree as ET
import pandas as pd

class XML2DataFrame:

    def __init__(self, xml_data):
        self.root = ET.XML(xml_data)

    def parse_root(self, root):
        return [self.parse_element(child) for child in iter(root)]

    def parse_element(self, element, parsed=None):
        if parsed is None:
            parsed = dict()
        for key in element.keys():
            parsed[key] = element.attrib.get(key)
        if element.text:
            parsed[element.tag] = element.text
        for child in list(element):
            self.parse_element(child, parsed)
        return parsed

    def process_data(self):
        structure_data = self.parse_root(self.root)
        return pd.DataFrame(structure_data)

with open(r'D:\Загрузки\gar_xml\AS_HOUSES_PARAMS_20241031_29f10e11-1540-4160-bcb4-04284f0ca728.xml') as f:
    xml_data = f.read()

xml2df = XML2DataFrame(xml_data)
df = xml2df.process_data()
Traceback (most recent call last):

  File ~\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\IPython\core\interactiveshell.py:3577 in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)

  Cell In[2],   line 4
    xml2df = XML2DataFrame(xml_data)

  Cell In[1],   line 8
    self.root = ET.XML(xml_data)

  File C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.11_3.11.2544.0_x64__qbz5n2kfra8p0\Lib\xml\etree\ElementTree.py:1350 in XML
    parser.feed(text)

  File <string>
ParseError: out of memory: line 1, column 0

Ответы (0 шт):