使用PIP安装包装时跳过错误

时间:2014-05-19 14:24:58

标签: python

我跑pip

pip install -r /requirements.txt

如果我的某个软件包出现故障,整个过程就会中止,而且不会安装任何其他软件包。

是否有命令在发生错误时会继续安装下一个包?

所以对于我的用例:这是我使用fab文件做的事情:

def _install_requirements():
    """
    Installs the required packages from the requirements.txt file using pip.
    """

    if not exists(config.SERVER_PROJECT_PATH + '/requirements.txt', use_sudo=True):
        print('Could not find requirements')
        return
    sudo('pip install -r %s/requirements.txt' % SERVER_PROJECT_PATH)

1 个答案:

答案 0 :(得分:4)

有一个方便的python脚本用于使用pip(source)更新所有库:

import pip
from subprocess import call

for dist in pip.get_installed_distributions():
    call("pip install --upgrade " + dist.project_name, shell=True)

在'for'循环中,您可以遍历要求。

# read requirements.txt file, create list of package names
for package in requirements:
    call("pip install " + package, shell=True)

如果您无法安装软件包,则不会崩溃。