Xpath et python 2.5

Le
condo4
Bonjour,

Je voudrais utiliser XPath avec Python 2.5

J'utilise pour le moment xml.dom.minidom

J'ai vu sur le net des appel a xml.xpath mais chez moi cette librairie
n'existe pas, aparement, il faut installer PyXML mais ce module
n'existe appriori pas en 2.5; surement que c'est intégré dans 2.5 de
base.

Si vous avez une idée.
Je suis sous windows en plus lol (enfin, pour ce projet, c'ets dans ma
boite alors. moi j'ai gentoo :-p)

@+Fab
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jerome
Le #643890
condo4 wrote:
Bonjour,


Bonjour


Je voudrais utiliser XPath avec Python 2.5

J'utilise pour le moment xml.dom.minidom


D'après la doc tu n'as pas accès à du xpath sur ton dom dans l'api.


J'ai vu sur le net des appel a xml.xpath mais chez moi cette librairie
n'existe pas, aparement, il faut installer PyXML mais ce module
n'existe appriori pas en 2.5; surement que c'est intégré dans 2.5 de
base....

Si vous avez une idée....
Je suis sous windows en plus lol (enfin, pour ce projet, c'ets dans ma
boite alors.... moi j'ai gentoo :-p)


Tu ne peux pas installer les packages à partir des sources sous windows ?

avec un truc du genre python.exe setup.py install ?


Sinon pour faire du xml un peu plus poussé, je te conseille libxml2 qui
est très performant et qui t'offre des fonctionnalités plutôt intéressantes.

import libxml2
tree_dom = libxml2.parseFile('toto.xml')
nodes = tree_dom.xpathEval('//node[@titi="23"]')





@+Fab



condo4
Le #643889
J'utilise pour le moment xml.dom.minidom
D'après la doc tu n'as pas accès à du xpath sur ton dom dans l'api.


J'ai vu sur le net des appel a xml.xpath mais chez moi cette librairie
n'existe pas, aparement, il faut installer PyXML mais ce module
n'existe appriori pas en 2.5; surement que c'est intégré dans 2.5 de
base....

Si vous avez une idée....
Je suis sous windows en plus lol (enfin, pour ce projet, c'ets dans ma
boite alors.... moi j'ai gentoo :-p)


Tu ne peux pas installer les packages à partir des sources sous windows ?
Le probleme, c'ets que ma version de python avait été compiler avec

visual studio 2003 et je ne l'ai pas...


Sinon pour faire du xml un peu plus poussé, je te conseille libxml2 qui
est très performant et qui t'offre des fonctionnalités plutôt int éressantes.

import libxml2
tree_dom = libxml2.parseFile('toto.xml')
nodes = tree_dom.xpathEval('//node[@titi="23"]')


Oui en effet j'explore aussi cette voie....

Ma question est, ou trouver des exemple en python de libxml2, de la
doc....

en gros, apres avoir "nodes", je voudrais ajouter un element enfant a
nodes[0], comment dois-je m'y prendre??

Merci....


Jerome
Le #643888
condo4 wrote:
J'utilise pour le moment xml.dom.minidom
D'après la doc tu n'as pas accès à du xpath sur ton dom dans l'api.


J'ai vu sur le net des appel a xml.xpath mais chez moi cette librairie
n'existe pas, aparement, il faut installer PyXML mais ce module
n'existe appriori pas en 2.5; surement que c'est intégré dans 2.5 de
base....
Si vous avez une idée....
Je suis sous windows en plus lol (enfin, pour ce projet, c'ets dans ma
boite alors.... moi j'ai gentoo :-p)
Tu ne peux pas installer les packages à partir des sources sous windows ?

Le probleme, c'ets que ma version de python avait été compiler avec

visual studio 2003 et je ne l'ai pas...


Sinon pour faire du xml un peu plus poussé, je te conseille libxml2 qui
est très performant et qui t'offre des fonctionnalités plutôt intéressantes.

import libxml2
tree_dom = libxml2.parseFile('toto.xml')
nodes = tree_dom.xpathEval('//node[@titi="23"]')


Oui en effet j'explore aussi cette voie....

Ma question est, ou trouver des exemple en python de libxml2, de la
doc....


C'est le gros problème de libxml2 malheureusement. Mais le script
libxml2.py est très clair et peut t'aider.

Sinon les classiques help(libxml2) ou dir(nodes[0]) peuvent te
renseigner sur les quelques fonctions qui te permettront de débuter.

Et tu peux trouver sur le net quelques exemples en cherchant un peu.


en gros, apres avoir "nodes", je voudrais ajouter un element enfant a
nodes[0], comment dois-je m'y prendre??


new_node = libxml2.newNode('node_name')
n = nodes[0]
n.addChild(new_node)



Merci....





NicolasP
Le #643887
Sinon pour faire du xml un peu plus poussé, je te conseille libxml2 qui
est très performant et qui t'offre des fonctionnalités plutôt
intéressantes.


Il y a aussi elementtree. C'est intégré à Python 2.5 et installable séparément sur les autres versions.

Nicolas

Publicité
Poster une réponse
Anonyme