Python XML: ParseError: Junk nach Dokumentelement

8

Versuch, die XML-Datei in ElementTree zu parsen:

%Vor%

Ich bekomme folgenden Fehler:

  

Traceback (letzter Aufruf zuletzt): Datei "", Zeile 1, in      Datei "C: \ Programm   Dateien \ Anaconda2 \ lib \ xml \ etree \ ElementTree.py ", Zeile 611, in init       self.parse (Datei) Datei "", Zeile 38, parse ParseError: Junk nach Dokumentelement: Zeile 3, Spalte 0

XML-Datei startet wie folgt:

%Vor%

gefolgt von vielen weiteren Knoten.

Ich sehe keinen Müll in Zeile 3, Spalte 0? Ich nehme an, dass es einen anderen Grund für den Fehler geben muss.

Die .xml-Datei wird von einer externen Software MITK generiert, daher nehme ich an, dass das in Ordnung sein sollte.

Arbeiten an Win 7, 64 Bit, VS2015, Anaconda

    
jdelange 09.08.2016, 14:32
quelle

3 Antworten

8

Wie @Matthias Wiehl sagte, erwartet ElementTree nur einen einzigen Wurzelknoten und ist kein wohlgeformtes XML und sollte an seinem Ursprung festgelegt werden. Als Workaround können Sie einfach einen gefälschten Wurzelknoten zum Dokument hinzufügen.

%Vor%     
Martin Valgur 09.08.2016, 14:54
quelle
2

Der Wurzelknoten Ihres Dokuments ( Version ) wird in Zeile 2 geschlossen. und . Der Parser erwartet keine Knoten nach dem Wurzelknoten. Lösung ist, den schließenden Schrägstrich zu entfernen.

    
Matthias Wiehl 09.08.2016 14:36
quelle
0

Versuchen Sie, das Dokument so zu reparieren. Schließen Sie das Element version am Ende

%Vor%     
Mechanic 09.08.2016 14:57
quelle

Tags und Links