Search code examples
pythonpip

Stop pip from failing on single package when installing with requirements.txt


I am installing packages from requirements.txt

pip install -r requirements.txt

The requirements.txt file reads:

Pillow
lxml
cssselect
jieba
beautifulsoup
nltk

lxml is the only package failing to install and this leads to everything failing (expected results as pointed out by larsks in the comments). However, after lxml fails pip still runs through and downloads the rest of the packages.

From what I understand the pip install -r requirements.txt command will fail if any of the packages listed in the requirements.txt fail to install.

Is there any argument I can pass when running pip install -r requirements.txt to tell it to install what it can and skip the packages that it cannot, or to exit as soon as it sees something fail?


Solution

  • Running each line with pip install may be a workaround.

    cat requirements.txt | xargs -n 1 pip install
    

    Note: -a parameter is not available under MacOS, so old cat is more portable.