I have a Debian 6 setup that I won't touch too much.
$ python --version Python 2.6.6 $ dpkg --list|grep lxml ii python-lxml 2.2.8-2 Im trying to access with XPath like this:
import xml.etree.ElementTree as ET root = ET.parse("a.xml") for e in root.findall('.//rec/data/field[@name="id"]'): print(e.tag + " " + e.attrib.get('name')) I got an error
Traceback (most recent call last): File "a.py", line 4, in <module> for e in root.findall('.//rec/data/field[@name="id"]'): File "/usr/lib/python2.6/xml/etree/ElementTree.py", line 647, in findall return self._root.findall(path) File "/usr/lib/python2.6/xml/etree/ElementTree.py", line 355, in findall return ElementPath.findall(self, path) File "/usr/lib/python2.6/xml/etree/ElementPath.py", line 198, in findall return _compile(path).findall(element) File "/usr/lib/python2.6/xml/etree/ElementPath.py", line 176, in _compile p = Path(path) File "/usr/lib/python2.6/xml/etree/ElementPath.py", line 93, in __init__ "expected path separator (%s)" % (op or tag) SyntaxError: expected path separator ([) Is this XPath syntax not supported by python-lxml 2.2.8 ?
What version support this and is compatible with python 2.6 ?