Development Status
- 5 - Production/Stable
Intended Audience
- Developers
- Information Technology
Programming Language
- Cython
- Python :: 3
- Python :: 3.8
- Python :: 3.9
- Python :: 3.10
- Python :: 3.11
- Python :: 3.12
- Python :: 3.13
- Python :: 3.14
- C
Operating System
- OS Independent
Topic
- Text Processing :: Markup :: HTML
- Text Processing :: Markup :: XML
- Software Development :: Libraries :: Python Modules
lxml is a Pythonic, mature 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.
To contact the project, go to the project home page or see our bug tracker at https://launchpad.net/lxml
In case you want to use the current in-development version of lxml, you can get it from the github repository at https://github.com/lxml/lxml . Note that this requires Cython to build the sources, see the build instructions on the project home page.
After an official release of a new stable series, bug fixes may become available at https://github.com/lxml/lxml/tree/lxml-6.0 . Running pip install https://github.com/lxml/lxml/archive/refs/heads/lxml-6.0.tar.gz will install the unreleased branch state as soon as a maintenance branch has been established. Note that this requires Cython to be installed at an appropriate version for the build.
6.0.2 (2025-09-21)
Bugs fixed
LP#2125278: Compilation with libxml2 2.15.0 failed. Original patch by Xi Ruoyao.
Setting decompress=True in the parser had no effect in libxml2 2.15.
Binary wheels on Linux and macOS use the library version libxml2 2.14.6. See https://gitlab.gnome.org/GNOME/libxml2/-/releases/v2.14.6
Test failures in libxml2 2.15.0 were fixed.
Other changes
Binary wheels for Py3.9-3.11 on the riscv64 architecture were added.
Error constants were updated to match libxml2 2.15.0.
Built using Cython 3.1.4.