|
|
|
#1 |
|
Messages: n/a
Hébergeur: |
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 |
|
|
|
#2 |
|
Messages: n/a
Hébergeur: |
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 > |
|
|
|
#3 |
|
Messages: n/a
Hébergeur: |
> > 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.... |
|
|
|
#4 |
|
Messages: n/a
Hébergeur: |
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 (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.... > |
|
|
|
#5 |
|
Messages: n/a
Hébergeur: |
> 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 |
|
![]() |
| Outils de la discussion | |
|
|