Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Xpath et python 2.5

4 réponses
Avatar
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=E9gr=E9 dans 2.5 de
base....

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

@+Fab

4 réponses

Avatar
Jerome
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



Avatar
condo4
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....


Avatar
Jerome
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....





Avatar
NicolasP
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