如果pip install a_package
失败(例如,pip install matplotlib
不够setuptools
新),则下一次调用 会pip install my_package
导致再次下载文件,而不是仅比较下载文件和远程版本的校验和。如何防止这种情况发生(假设 具有pip
这些功能)?
答案1
我没有副本来pip
测试它,但这个--download-cache <dir>
选项会有帮助吗?从我在文档中了解到的情况来看,它会将下载的文件保存在那里并使用它们。
编辑
我安装了pip
,但发现一个安装失败的包,于是我尝试用 来安装它--download-cache <dir>
。然后我重新运行安装程序,日志中显示它正在使用缓存目录,而不是下载它。所以它确实有效。
答案2
从 6.0 版开始,pip
现在可以处理自己的缓存:https://pip.pypa.io/en/latest/reference/pip_install.html#caching
从 v6.0 开始,pip 默认提供缓存功能,其功能与 Web 浏览器类似。虽然缓存默认处于开启状态,并且默认情况下会执行正确的操作,但您可以利用该
--no-cache-dir
选项禁用缓存并始终访问 PyPI。