Skip to main content

Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API.

Project description

lxml is a Pythonic binding for the libxml2 and libxslt libraries. It provides safe and convenient access to these libraries using the ElementTree API.

It extends the ElementTree API significantly to offer support for XPath, RelaxNG, XML Schema, XSLT, C14N and much more.

1.1alpha (2006-06-27)

Features added

  • Module level iterwalk() function as ‘iterparse’ for trees

  • ElementTree compatible iterparse() module function

  • Element.nsmap property returns a mapping of all namespace prefixes known at the Element to their namespace URI

  • Reentrant threading support in RelaxNG, XMLSchema and XSLT

  • Threading support in parsers and serializers:

    • All in-memory operations (tostring, parse(StringIO), etc.) free the GIL

    • File operations (on file names) free the GIL

    • Reading from file-like objects frees the GIL and reacquires it for reading

    • Serialisation to file-like objects is single-threaded (high lock overhead)

  • Element iteration over XPath axes:

    • Element.iterdescendants() iterates over the descendants of an element

    • Element.iterancestors() iterates over the ancestors of an element (from parent to parent)

    • Element.itersiblings() iterates over either the following or preceding siblings of an element

    • Element.iterchildren() iterates over the children of an element in either direction

    • All iterators support the tag keyword argument to restrict the generated elements

  • Element.getnext() and Element.getprevious() return the direct siblings of an element

Bugs fixed

Project details

Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lxml-1.1alpha.tar.gz (412.5 kB view hashes)

Uploaded source

Built Distributions

lxml-1.1alpha.win32-static-py2.4.exe (1.3 MB view hashes)

Uploaded 2 4

lxml-1.1alpha.win32-py2.4.exe (222.1 kB view hashes)

Uploaded 2 4

lxml-1.1alpha-py2.4-win32.egg (164.7 kB view hashes)

Uploaded 2 4

lxml-1.1alpha-py2.4-static-win32.egg (1.3 MB view hashes)

Uploaded 2 4

lxml-1.1alpha-py2.4-linux-x86_64.egg (186.8 kB view hashes)

Uploaded 2 4

lxml-1.1alpha-py2.4-linux-i686.egg (176.0 kB view hashes)

Uploaded 2 4

lxml-1.1alpha-py2.3-linux-i686.egg (176.1 kB view hashes)

Uploaded 2 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page