pip可以使用已有的包而不是重新下载吗?
我正在做一个新项目,需要创建一个新的虚拟环境(virtualenv)。当我运行命令 pip install -r requirements.txt 时,它又重新下载那些包,尽管这些包在之前项目的虚拟环境中已经存在。
有没有办法让 pip 从另一个虚拟环境中获取这些包呢?
3 个回答
3
不行。你可以自己搭建一个PyPI的镜像或者缓存代理服务器,但就只有这些功能。
5
15
这不是你问题的直接答案,但我想这可能是你想要的,也就是避免下载:你可以设置一个环境变量 PIP_DOWNLOAD_CACHE
,比如:
PIP_DOWNLOAD_CACHE=/path/to/directory/where/downloaded/packages/will/be/stored
这样,软件包会被下载到这个目录里,如果以后需要再次安装,就会从这个目录里取。
这个方法我是在这里找到的:http://tartley.com/?p=1133,对我来说效果很好。
另外,pip install
命令还有一个选项 --download-cache
,我猜它的功能和这个环境变量是一样的,不过设置环境变量会更方便一些。