Re: problem parsing msproject xml

Stefan Behnel <[email protected]>
Newsgroups gmane.comp.python.xml
Message-ID <[email protected]>
Dan Trevino wrote:
> I'm trying to parse project xml.  The main thing i'm trying to get at
> is the task name, which is basically in this structure:
> <Task>
>   <UID>1</UID>
>   <Name>do step 1</Name>    <-- i want the text from here
> ...
> </Task>
> <Resource>
>   <Name>John Doe</Name>
> ...
> </Resource>
> 
> I'm having difficulty figuring out which methods to use to access the
> data.  I cant get to "Name" directly because it is used also for
> project resources....so I need the task name specifically.

Try lxml.etree:

   >>> # untested
   >>> from lxml import etree
   >>> tree = etree.parse("project.xml")
   >>> print tree.xpath("//Task/Name/text()")
   ["do step 1", ...]

or if you don't like XPath:

   >>> # untested
   >>> from lxml import etree
   >>> tree = etree.parse("project.xml")
   >>> for task in tree.getiterator("Task"):
   ...     for name in task.findall("Name"):
   ...         print name.text
   do step 1
   ...

http://codespeak.net/lxml

Stefan
_______________________________________________
XML-SIG maillist  -  [email protected]
http://mail.python.org/mailman/listinfo/xml-sig
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.