Seite 1 von 1
Suche gute XML Lib
Verfasst: Samstag 8. Januar 2011, 19:39
von BLU3L30PARD
Moin!
Ich versuche gerade mit XML zu arbeiten aber finde die
XML Module, die standardmäßig bei Python (2.7.1) dabei sind
es zu kompliziert. PyXML sieht ja ganz gut aus, ist aber total veraltet.
Könnt ihr mir vielleicht eine gute Lib empfehlen?
(Am besten wäre eine XML Handhabung ähnlich der von C#

)
Re: Suche gute XML Lib
Verfasst: Samstag 8. Januar 2011, 20:11
von lunar
Was bitte ist denn an ElementTree kompliziert?! Ich hätte ja lxml empfohlen, aber wenn Du schon ElementTree kompliziert findest ...
"Wie in C#" ist im Übrigen wenig zielführende Herangehensweise. Wenn Du "wie in C#" programmieren möchtest, dann programmiere bitte schön C#. Die Einsicht, dass Python nämlich nicht wie C# ist, und ganz andere Herangehensweisen und Lösungsansätze erfordert, wird sich Dir sonst früher oder später recht brutal aufzwingen.

Re: Suche gute XML Lib
Verfasst: Samstag 8. Januar 2011, 20:39
von BLU3L30PARD
Ich habe nicht "wie in C#" sondern "
ähnlich C#" geschrieben. Das heißt, wenn du den zusammenhang
genau betrachtest, dass die Handhabung ähnlich der in C# sein sollte
in C# sieht das nähmlich so aus:
XML:
C#:
Code: Alles auswählen
XMLReader reader = new XMLReader();
reader.ReadStartElement("ABC"); // ABC Tag öffnen
reader.ReadStartElement("a"); // a Tag öffnen
Console.WriteLine(reader.ReadString()); // Ausgabe: b
reader.ReadEndElement(); // a Tag verlassen
reader.ReadStartElement("b"); // b Tag öffnen
Console.Writeline(reader.ReadString()); // Ausgabe: c
reader.ReadEndElement(); // b Tag verlassen
reader.ReadEndElement(); // ABC Tag verlassen
reader.Close(); // XMLReader schließen
Ich programmiere auch in C#, aber für mein momentanes Projekt verwende ich Python und PyQt und möchte
meine Einstellungen statt der Registry in einer XML Datei speichern und eben auch auslesen.
Und im gegensatz zu dem Auslesen von XML in C# ist die Python Methode / die Methoden einfach etwas
komplizierter...
//Edit: Ich werde jetzt lxml verwenden. Das kommt an das gewünschte schon sehr nah ran.
Re: Suche gute XML Lib
Verfasst: Samstag 8. Januar 2011, 21:08
von BlackJack
@BLU3L30PARD: Was ist hier dran bitte komplizierter als an dem gezeigten C#-Quelltext!?
Code: Alles auswählen
from xml.etree import ElementTree as etree
def main():
doc = etree.parse('test.xml')
print doc.find('a').text
print doc.find('b').text
if __name__ == "__main__":
main()
Re: Suche gute XML Lib
Verfasst: Sonntag 9. Januar 2011, 00:10
von problembär
Still going strong:
Code: Alles auswählen
#!/usr/bin/env python
# coding: iso-8859-1
import xml.dom.minidom
dom = xml.dom.minidom.parse("test.xml")
ABCnode = dom.getElementsByTagName("ABC")[0] # ABC Tag öffnen
anode = ABCnode.getElementsByTagName("a")[0] # a Tag öffnen
print anode.childNodes[0].nodeValue # Ausgabe: b
bnode = ABCnode.getElementsByTagName("b")[0] # a Tag öffnen
print bnode.childNodes[0].nodeValue # Ausgabe: c
Re: Suche gute XML Lib
Verfasst: Sonntag 9. Januar 2011, 03:53
von Leonidas
Also minidom kann man doch echt nicht mehr heutzutage, 2011 noch empfehlen?! Langsam und umständlich wären so die "Hauptvorteile" die mir bei minidom einfallen, zu den Nachteilen könnte man noch zählen dass der Code nachher wie Java oder JavaScript ausschaut. Aber selbst bei letzterem hat sich mit Libraries wie jQuery herausgestellt dass *niemand* die DOM-API nutzen will.
Re: Suche gute XML Lib
Verfasst: Sonntag 9. Januar 2011, 23:25
von /me
Leonidas hat geschrieben:Also minidom kann man doch echt nicht mehr heutzutage, 2011 noch empfehlen?!
Aber es sollte doch so kompliziert sein wie bei C shudder ... sorry ... C sharp.

Re: Suche gute XML Lib
Verfasst: Montag 10. Januar 2011, 07:27
von lunar
@/me: Made my day

Re: Suche gute XML Lib
Verfasst: Mittwoch 12. Januar 2011, 22:11
von querdenker
BLU3L30PARD hat geschrieben:Moin!
...PyXML sieht ja ganz gut aus, ist aber total veraltet....
Moin moin! PyRXP ist veraltet? Woher nimmst du die Erkenntnis?
Re: Suche gute XML Lib
Verfasst: Mittwoch 12. Januar 2011, 22:16
von lunar
@querdenker: Und woher nimmst Du die Erkenntnis, dass PyRXP irgendetwas mit PyXML zu tun hätte?!
Re: Suche gute XML Lib
Verfasst: Mittwoch 12. Januar 2011, 22:18
von Leonidas
querdenker hat geschrieben:BLU3L30PARD hat geschrieben:Moin!
...PyXML sieht ja ganz gut aus, ist aber total veraltet....
Moin moin! PyRXP ist veraltet? Woher nimmst du die Erkenntnis?
PyXML hatte das letzte Release vor etwas mehr als 6 Jahren…
Re: Suche gute XML Lib
Verfasst: Sonntag 16. Januar 2011, 12:24
von querdenker

autschn.... "Leicht" danebengelesen.