Best Ways to Install Python lxml

Hello geeks, I hope all are doing great. So, no one denies that the number of libraries in Python gives strong support to the python programming language. These libraries extend the scope of the language to a higher extent and extend the domain of usage of the language. Today in this article, we will briefly introduce the library and its installation. The name of the library is lxml.

lxml Module

This open-source library gives us the ease of processing XML and HTML in the Python language. This library is the pythonic binding of C libraries such as libxml2_ and libxslt_. It combines the speed and completeness of XML libraries with the simplicity of native python API. It is compatible but somewhat superior to Element tree API. However, we are not going much more profound in discussing this module. For this article, we will only focus on its installation.


But, before heading toward the installation procedure of the library, first, see the requirements for the lxml library.

  • One should have python installed in the system with version 2.7 or 3.4 or above.
  • If you are not using a static binary distribution (e.g. from a Windows binary installer), you need supporting libraries installed in the system. They are as follows:
    • libxml2 version 2.9.2 or later.
    • libxslt version 1.1.27 or later.

Installing lxml on Linux

To install the package with all the required dependencies on the Linux system, one can use the installation tools, i.e., apt-get. You can follow the following command to install it along with all the packages.

sudo apt-get install libxml2-dev libxslt-dev python-dev

Or, you can also use the following command for the same without mentioning the name of the required dependency.

sudo apt-get build-dep python3-lxml

Installing lxml Using PIP


If you are a pip user, you can use the following command.

pip install lxml

Now, this command will install the library locally in your virtual environment. However, to install it globally, you can use the following command.

Note:- This works only for Linux systems.
sudo pip install lxml

Or, you can also specify the version while entering the installation command.

pip install lxml==3.4.2

To speed up the build in test environments, e.g., on a continuous integration server, disable the C compiler optimizations by setting the CFLAGS environment variable:

CFLAGS="-O0"  pip install lxml

We can check it using the following command.

>>> import lxml
>>> lxml.__version__

Install lxml in Debian based System

For Debian-based systems, we can use the following command.

sudo apt-get build-dep python3-lxml

Installing Python lxml in MacOS

However, you can use the following command to install the package on macOS. This command will also install the required dependency, so we also need not to

care about that.

STATIC_DEPS=true sudo pip install lxml

Install python lxml in CentOS

However, to install lxml, we first need to install its dependency in centOS. To do that, we will use the following command.

sudo yum install libxml2 libxml2-devel libxml2-python libxslt libxslt-devel

pip install lxml or easy_install lxml

Installing lxml Using Conda

However, you are an anaconda user. You can install it using the following command.

conda install -c anaconda lxml

Installing lxml in Pycharm

To install lxml in pycharm, you can follow the following step:

  • Open File > Settings > Project from the PyCharm menu.
  • Select your current project.
  • Click the Python Interpreter tab within your project tab.
  • Click the “+" symbol to add a new library to the project.
  • Now type in the library to be installed, in your example "lxml" without quotes, and click Install Package.
  • Wait for the installation to terminate and close all pop-ups.

Installing lxml in Jupyter Notebook

To install lxml in jupyter notebook, you can run the following command in the Jupyter notebook code cell.

!pip install lxml

Using lxml with python-libxml2

However, if you want to install the dependency along with the library statically, you can use the following command. The consequences of not doing that are that the two packages will interfere in places where the libxml2 library requires global configuration, which may lead to the crash of the program.

STATIC_DEPS=true pip install lxml

Use Binary wheel files to install lxml

Despite installing lxml using these commands, we have another option available. In this method, we first install the binary wheel file for lxml and then run it with pip install. We can download the file from the given website.

Unofficial Windows binaries, Click here.

Now once done, we can install it using the following command.

pip install lxml‑4.6.5‑cp39‑cp39‑win_amd64.whl

Installing lxml in RedHat

To install lxml in RedHat, we need to follow the series of commands.

sudo yum install make automake gcc gcc-c++ kernel-devel git-core -y 

sudo yum install python-devel -y 

sudo curl -o /tmp/ 

sudo /usr/bin/python /tmp/ 

sudo /usr/bin/easy_install pip 

sudo rm setuptools-*.tar.gz 

sudo pip install -i --upgrade pip 

sudo pip install virtualenv 

FAQs on Python Install lxml

Does lxml come with Python?

No, we need to download it separately.

Is lxml faster than BeautifulSoup?

Yes, lxml is way faster than BeautifulSoup.

Do you need to install a parser library lxml to use BeautifulSoup?

Yes, we need to install both lxml and BeautifulSoup both for using the library.


So, today in this article, we have seen how we can install the lxml library on different platforms. We have taken examples of different environments where we can install the library. I hope this article has helped you. Thank You.

Notify of
Inline Feedbacks
View all comments