如何安装带有. whl 文件的 Python 软件包?

我在 Windows 机器上安装 Python 软件包(特别是 JPype1 0.5.7)时遇到问题,并且想用 Christoph Gohlke 的 Window 二进制文件安装它。 (根据我的经验,这减轻了许多其他软件包安装的麻烦。)

但是,尽管 Christoph 过去曾经提供. exe 文件,但最近看来他是在上载. whl 文件。

http://www.lfd.uci.edu/~gohlke/pythonlibs/#jpype

但是,如何安装. whl 文件?

笔记:

  • 我已经找到了车轮上的文档 ,但是它们在解释如何安装. whl 文件时似乎并不那么简单。
  • 这个问题是一个重复这个问题 ,这是没有直接回答。

答案

我只是使用了以下非常简单的内容。首先打开一个控制台,然后 CD 到您下载文件的位置,例如 some-package.whl 并使用

pip install some-package.whl

注意:如果无法识别 pip.exe,则可以在安装 python 的 “脚本” 目录中找到它。如果未安装 pip,则此页面可以提供帮助: 如何在 Windows 上安装 pip?

注意:为澄清
如果将*.whl文件复制到本地驱动器(例如C:\ some-dir \ some-file.whl ),请使用以下命令行参数 -

pip install C:/some-dir/some-file.whl

首先,请确保您已更新点子以启用滚轮支持:

pip install --upgrade pip

然后,要从 wheel 安装,请给它提供下载 wheel 的目录。例如,要安装package_name.whl

pip install --use-wheel --no-index --find-links=/where/its/downloaded package_name

我和 OP 在同一条船上。

使用 Windows 命令提示符,从目录:

C:\Python34\Scripts>
pip install wheel

似乎有效。

将目录更改为 whl 所在的目录,它只是告诉我 “无法识别点子”。返回C:\Python34\Scripts> ,然后使用上面的完整命令提供 “where / its / downloaded” 位置,它说Requirement 'scikit_image-...-win32.whl' looks like a filename, but the filename does not exist

因此,我在 Python34 / Scripts 中删除了. whl 的副本,再次运行了完全相同的命令( --find-links=仍转到另一个文件夹),这一次它起作用了。

Christoph Gohlke 的网站上有多个文件版本。

从该站点安装车轮时,我发现重要的一点是首先从 Python 控制台运行此车轮:

import pip
print(pip.pep425tags.get_supported())

以便您知道应该为计算机安装哪个版本。选择错误的版本可能会导致软件包安装失败(尤其是如果您没有使用正确的 CPython 标记,例如 cp27)。

您必须从我的计算机上的命令提示符处运行 pip.exe。我输入C:/Python27/Scripts/pip2.exe install numpy

在 Windows 上,您不能仅使用pip install --upgrade pip pip.exe pip install --upgrade pip升级,因为pip.exe正在使用中,替换它会出错。相反,您应该像这样升级pip

easy_install --upgrade pip

然后检查pip版本:

pip --version

如果显示6.x系列,则有车轮支撑。

只有这样,您才能安装车轮套件,如下所示:

pip install your-package.whl

为了能够通过简单的双击安装 wheel 文件,您可以执行以下操作之一:

1)在命令行下以管理员权限运行两个命令:

assoc .whl=pythonwheel
ftype pythonwheel=cmd /c pip.exe install "%1" ^& pause

2)或者,可以将它们复制到wheel.bat文件中,并通过属性中的 “以管理员身份运行” 复选框来执行。

PS pip.exe 假定位于 PATH 中。

更新:

(1)可以合并为一行:

assoc .whl=pythonwheel& ftype pythonwheel=cmd /c pip.exe install -U "%1" ^& pause

(2).bat 文件的语法略有不同:

assoc .whl=pythonwheel& ftype pythonwheel=cmd /c pip.exe install -U "%%1" ^& pause

还可以使其输出更加详细:

@assoc .whl=pythonwheel|| echo Run me with administrator rights! && pause && exit 1
@ftype pythonwheel=cmd /c pip.exe install -U "%%1" ^& pause || echo Installation error && pause && exit 1
@echo Installation successfull & pause

有关详细信息,请参见我的博客文章

编辑:这不再是画中画的一部分

为避免下载此类文件,您可以尝试:

pip install --use-wheel pillow

有关更多信息, 请参见 this

如果您无法直接使用 PIP 安装特定的软件包。

你可以下载一个特定.whl - 从(轮)封装https://www.lfd.uci.edu/~gohlke/pythonlibs/

CD(更改目录)到下载的软件包,并通过 - 手动安装
pip install PACKAGENAME.whl
例如:
pip install ad3‑2.1‑cp27‑cp27m‑win32.whl

我设法安装 NumPy 的唯一方法如下:

我从这里https://pypi.python.org/pypi/numpy下载了 NumPy

这个模块

https://pypi.python.org/packages/d7/3c/d8b473b517062cc700575889d79e7444c9b54c6072a22189d1831d2fbbce/numpy-1.11.2-cp35-none-win32.whl#md5=e485e06907826af5e1fc88608d0629a2

PowerShell 中从 Python 的安装路径执行命令

PS C:\Program Files (x86)\Python35-32> .\python -m pip install C:/Users/MyUsername/Documents/Programs/Python/numpy-1.11.2-cp35-none-win32.whl
Processing c:\users\MyUsername\documents\programs\numpy-1.11.2-cp35-none-win32.whl
Installing collected packages: numpy
Successfully installed numpy-1.11.2
PS C:\Program Files (x86)\Python35-32>

PS .:我在 Windows 10 上安装了它。