Seite 1 von 1

Xpath funktionen

Verfasst: Mittwoch 22. April 2009, 14:34
von Dill
Hi,

gibts eine bibliothek die xpath-funktionen unterstützt (und das auch dokumentiert)

habe mir grade 4suite angeschaut, aber das ist doch sehr dünn dokumentiert.

ich suche insbesondere eine implementierung der matches-funktion aus xpath2 (re).
4suite liefert da eine extension mit, bringe das aber wie gesagt nicht hin.

zu pyXml finde ich garkeine doku (nur howto)
lxml erwähnt nichts in sachen xpath-funktionen...

Re: Xpath funktionen

Verfasst: Mittwoch 22. April 2009, 14:51
von Hyperion
Dill hat geschrieben:Hi,
lxml erwähnt nichts in sachen xpath-funktionen...
Auf der Seite findet man recht schnell:
As an lxml specific extension, these classes also provide an xpath() method that supports expressions in the complete XPath syntax, as well as custom extension functions.
Sollte also gehen!

Verfasst: Mittwoch 22. April 2009, 18:35
von Dill
jo hast recht, funktioniert damit.

bisher noch nie probleme gehabt mit py-libs.
jetzt ausgerechnet mit xml, seltsam.
ziemliches chaos, finde ich....

Verfasst: Mittwoch 22. April 2009, 18:38
von Hyperion
Dill hat geschrieben:jo hast recht, funktioniert damit.

bisher noch nie probleme gehabt mit py-libs.
jetzt ausgerechnet mit xml, seltsam.
ziemliches chaos, finde ich....
Und wo ist jetzt dann das Problem bzw. das Chaos? (Oder ist das bei Dir zu suchen ;-) )

Verfasst: Mittwoch 22. April 2009, 18:39
von lunar
Eigentlich gibt es nur zwei wichtige Dinge: ElementTree in der Standardbibliothek für die einfachen Aufgaben, lxml für den Rest. Die anderen Bibliotheken kannst du eigentlich getrost ignorieren.

Verfasst: Mittwoch 22. April 2009, 22:42
von Leonidas
Also PyXML bestimmt, bei 4Suite/Amara bin ich mir bisher noch nicht sicher.

Verfasst: Donnerstag 23. April 2009, 09:38
von lunar
Und was kann das, was lxml nicht kann?

Verfasst: Donnerstag 23. April 2009, 09:57
von Dill
Hyperion hat geschrieben: Und wo ist jetzt dann das Problem bzw. das Chaos? (Oder ist das bei Dir zu suchen ;-) )
naja, ich war halt einfach etwas ungeduldig.
wenn ich eine schnelle lösung brauche nehme ich python zur hand und habe damit immer schnell eine passende lib gefunden mit der ich schnell zu eine lösung komme. bei xml war das anders.

erster ansatz war ds python xml howto. da konnte ich dann xpath nicht importieren. pyxml hat das gleiche interface wie der native support, kann aber mehr(??). dann wollte ich also pyxml komplett installieren, finde dann aber auf der suche danach, dass man das eher nicht einsetzen soll, sondern idealerweise libxml2 oder 4suite. hab dann 4suite genommen. genau die funktione die ich brauche (f:match) hab ich dann nicht zur mitarbeit überreden können.

dann also libxml2, dazu die python version runtergeladen und keine doku dazu gefunden. dann also anderes binding: lxml. da steht: idealerweise auschecken aus svn. gemacht und die c-libxml2 packs runtergeladen, aber setup.py install läuft nicht, da die libs nicht gefunden werden...

dann nochmal gegoogled nach gilfe und festgestellt, dass es ja einen installer für lxml gibt. funktioniert soweit auch. dann nächste verwirrung. anscheinend implementiert jeder das elementree interface (org effbot, pyxml, lxml) ...

natürlich, wenn ich direkt mit ruhe an die sache rangegangen wäre, hätte ich nicht über ne stunde vertrödelt, aber soclhe erfahrung habe ich mit py bisher nie gemacht.

Verfasst: Donnerstag 23. April 2009, 14:05
von Leonidas
lunar hat geschrieben:Und was kann das, was lxml nicht kann?
Laut der 4Suite-Seite etwa XLink, XUpdate und Amara selbst soll etwas mehr pythonic sein als die ElementTree-API.