Il giorno 28 giugno 2013 16:20, Marcello <marce...@linuxvil.it> ha scritto:
> Sono nuovamente qui per chiedere il vostro aiuto. > Ho un file xml > > <ip>192.168.1.1</ip> > <prg>FooBar</prg> > <prg>FooBar1</prg> > <prg>FooBar2</prg> > > > per prendere i dati da questo file faccio così > > file = "file.xlm" > _imp = open(file, "r") > imp = _imp.read() > _imp.close() > if "<ip>" in imp: > Ip = imp[imp.index("<ip>")+4:imp.index("</ip>")] > else: > Ip = "0.0.0.0" > print Ip > > il problema è quando ho più di un campo con lo stesso nome. > Se utilizzo lo stesso metodo per prg giustamente mi viene proposto solo il > primo risultato (FooBar). > Come faccio ad avere tutti i risultati? > Ho provato con un for ..... ma non ho risolto, anche perchè non sempre > <prg>FooBarX</prg> è sulla stessa riga quindi non posso utilizzare > readline() > ti sconsiglio vivamente di fare tu il parse del file xml c'è lxml [0] che lo fa ottimamente e poi ti da tutte le primitive per accedere ai vari elementi via xpath e per ottenre il testo relativo fai un piccolo investimento a guardarti il tutorial di lxml e vedrai che vivi meglio :-) ciao, Marco [0] http://lxml.de/
_______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python