virtualenv 需求文件 - 检查包的存在性
我有一个需求文件,其中很多库都不存在。为了简化这个文件,我需要做以下几步:
- 用命令 pip install -r requirements.txt 安装库
- 查看哪个库安装失败
- 把失败的库从 requirements.txt 文件中删除
- 重复这个过程
对于80多个文件来说,这个过程非常繁琐,因为每个文件里大约有三个库会失败……有没有办法在处理需求文件之前,先检查一下,列出那些不存在的库或版本呢?
谢谢!
2 个回答
0
我希望这还不算太晚:
我写了一个脚本,它会尝试安装requirements.txt文件里的每一个包。如果成功安装了某个包,它就会把这个包的名字添加到一个叫“existent.txt”的文件里。所以,所有成功安装的包的列表都会在“existent.txt”里。
while read line
do
pip install $line;
pip freeze | grep $line && echo $line >> existent.txt;
done < requirements.txt
你可以把这个放在一个file.sh文件里,想执行的时候就可以运行它。
0
我在这个链接找到了检查一个软件包是否安装的代码:
http://code.activestate.com/recipes/440501-list-information-about-installed-python-packages-a/
也许你可以从这里找到一些有用的信息。
祝好,
Ste