Yes! XPath is a good bet. You can also try some Pythonic XML libraries like Amara. You need not learn any special language even.
There are good database approaches to XML too, especially if you are going to query a document collection as a whole rather than file by file. You can try XQuery. I think 4Suite can do this (But I am too sleepy to confirm :-) ). You also use eXist (Java but you can use XMLRPC or SOAP to interface with it from Python). Not optimal like parent said, but if it is XML that have to live with ... -- http://mail.python.org/mailman/listinfo/python-list