6 Stimmen

Parsing großer Pseudo-Xml-Dateien in Python

Ich versuche, eine große Datei (> 5 GB) mit strukturierten Markup-Daten zu parsen. Das Datenformat ist im Wesentlichen XML, aber es gibt kein explizites Root-Element. Was ist der effizienteste Weg, das zu tun?

Das Problem mit SAX-Parser ist, dass sie ein Root-Element benötigen, so dass ich entweder ein Pseudo-Element zum Datenstrom hinzufügen muss (gibt es ein Äquivalent zu Javas SequenceInputStream in Python?) oder ich muss zu einem nicht-SAX-konformen Ereignis-basierten Parser wechseln (gibt es einen Nachfolger von sgmllib?)

Die Struktur der Daten ist recht einfach. Im Grunde eine Auflistung von Elementen:

<Document>
  <docid>1</docid>
  <text>foo</text>
</Document>
<Document>
  <docid>2</docid>
  <text>bar</text>
</Document>

*in der Tat zu iterieren

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X