【发布时间】:2016-07-08 00:56:33
【问题描述】:
是否可以不使用pip 来安装 Python 轮子?我总是在使用pip 安装时遇到问题,所以我通常通过复制和粘贴来手动安装库。我想知道是否有办法以类似的方式制作轮文件。
【问题讨论】:
标签: python pip python-wheel
是否可以不使用pip 来安装 Python 轮子?我总是在使用pip 安装时遇到问题,所以我通常通过复制和粘贴来手动安装库。我想知道是否有办法以类似的方式制作轮文件。
【问题讨论】:
标签: python pip python-wheel
我假设您可以访问互联网,但您没有安装有效的 pip。
下载点子轮:
wget https://files.pythonhosted.org/packages/0f/74/ecd13431bcc456ed390b44c8a6e917c1820365cbebcb6a8974d1cd045ab4/pip-10.0.1-py2.py3-none-any.whl
要首先找到发布的 url,您可以获取索引 json 端点。例如:
$ curl -s https://pypi.org/pypi/pip/json | jq ".urls[0].url"
"https://files.pythonhosted.org/packages/0f/74/ecd13431bcc456ed390b44c8a6e917c1820365cbebcb6a8974d1cd045ab4/pip-10.0.1-py2.py3-none-any.whl"
对于不编写脚本而只是一次性执行的用户,您可能更愿意使用浏览器简单地下载一个点子轮。在这种情况下,请在此处查找最新的发布文件:https://pypi.org/project/pip/#files
现在你有了一个用于 pip 的轮子,以及你想要安装的其他轮子文件。您实际上可以“执行” pip wheel 文件来安装其他 wheel 文件。例如,如果您尝试从 bdist 安装 setuptools v39.0.1,命令将如下所示:
$ python pip-10.0.1-py2.py3-none-any.whl/pip install --no-index setuptools-39.0.1-py2.py3-none-any.whl
Processing ./setuptools-39.0.1-py2.py3-none-any.whl
Installing collected packages: setuptools
Successfully installed setuptools-39.0.1
您现在可以安装 setuptools,即使没有安装 pip。
如果您想知道,是的,您可以使用相同的技巧来安装 pip 本身。该命令如下所示:
python pip-10.0.1-py2.py3-none-any.whl/pip install --no-index pip-10.0.1-py2.py3-none-any.whl
现在你应该有一个工作 pip 安装,与 python 可执行文件指向的任何解释器相关联。
【讨论】:
--only-binary=wheel 说明符的pip download 命令,例如pip download --only-binary=wheel pip.
是的。实际上 .whl 文件只是 zip 档案,因此您可以提取它们的内容并使用库路径变量来使其工作。 然而,这确实是一种糟糕的做法。
【讨论】:
import sys; print(sys.path)