关于Windows:如何安装带有.whl文件的python包?

How do I install a Python package with a .whl file?

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

然而,虽然克里斯托夫过去常常提供.exe文件,但最近他似乎改为上传.whl文件。

http://www.lfd.uci.edu/~gohlke/pythonlibs/jtype

但是如何安装.whl文件?

Notes:

  • I've found documents on wheel, but they don't seem so staightforward in explaining how to install .whl files.
  • This question is a duplicate with this question, which wasn't directly answered.


我只是用了下面这个很简单的。首先打开一个控制台,然后打开CD,将文件像some-package.whl一样下载到其中,然后使用

1
pip install some-package.whl

注意:如果不能识别pip.exe,可以在安装python的"scripts"目录中找到它。如果未安装PIP,此页将有助于:如何在Windows上安装PIP?

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

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


要从控制盘安装,请为其提供下载控制盘的目录。例如,要安装package_name.whl

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

确保您首先更新了PIP以启用车轮支撑:

1
pip install --upgrade pip


我和手术室在同一条船上。

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

1
2
C:\Python34\Scripts>
pip install wheel

似乎起作用了。

将目录更改为WHL所在的位置,只会告诉我"PIP无法识别"。返回到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=仍在另一个文件夹中),这次它起作用了。


伟大的克里斯托夫·戈尔克的网站上有几个文件版本。

当从这个站点安装轮子时,我发现一些重要的事情是首先从python控制台运行它:

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

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


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


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

1
easy_install --upgrade pip

然后检查pip版本:

1
pip --version

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

只有这样,才能安装这样的车轮组件:

1
pip install your-package.whl


要安装带有简单双击的车轮文件,可以执行以下操作之一:

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

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

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

假定ps pip.exe在路径中。

更新:

(1)可合并成一行:

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

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

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

此外,它的输出可以变得更详细:

1
2
3
@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安装特定的包。

您可以从-https://www.lfd.uci.edu/~gohlke/pythonlibs下载特定的.whl轮包/

CD(更改目录)到下载的包,并通过-pip install PACKAGENAME.whl前任:pip install ad3?2.1?cp27?cp27m?win32.whl


编辑:这不再是PIP的一部分

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

1
pip install --use-wheel pillow

有关详细信息,请参阅。


我所做的是首先使用以下命令更新PIP:我还用命令安装了轮子:pip install wheel,然后它运行得很好。

希望对你有用。


我安装numpy的唯一方法是:

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

这个模块

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

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

1
2
3
4
5
6
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
umpy-1.11.2-cp35-none-win32.whl
Installing collected packages: numpy
Successfully installed numpy-1.11.2
PS C:\Program Files (x86)\Python35-32>

附言:我在Windows10上安装了它。


我会建议您如何安装.whl文件。起初我遇到了很多问题,但后来我解决了,这是我安装.whl文件的诀窍。

正确执行步骤以导入模块

  • 确保.whl文件保存在python 2.7/3.6/3.7/中。文件夹。最初,当您下载.whl文件时,文件保存在下载的文件夹中,我的建议更改文件夹。它使安装文件更加容易。
  • 打开命令提示,然后通过输入
  • cd c:\python 3.7

    3.现在,输入下面写的命令

    1
    >py -3.7(version name) -m pip install (file name).whl
  • 单击"输入",确保输入当前使用的正确版本文件名。

  • 按Enter键后,等待几分钟,文件将被安装,您将能够导入特定模块。

  • 为了检查模块安装是否成功,请在空闲状态下导入模块。检查一下。

  • 谢谢:


    在安装过程中,Windows上的新python用户经常忘记将python的scripts目录添加到path变量中。我建议使用python启动程序,并使用-m开关将pip作为脚本执行。然后可以为特定的Python版本安装轮子(如果安装了多个轮子),脚本目录不必在路径中。因此,打开命令行,导航到.whl文件所在的文件夹并输入:

    1
    py -3.6 -m pip install your_whl_file.whl

    用python版本替换3.6,或者如果路径中首先出现所需的python版本,只需输入-3。在活跃的虚拟环境中:py -m pip install your_whl_file.whl

    当然,您也可以通过这种方式安装pypi中的包,例如

    1
    py -3.6 -m pip install pygame

    您可以使用pip install filename安装.whl文件。尽管要在此表单中使用它,它应该与命令行位于同一目录中,否则请指定完整的文件名及其地址,如pip install C:\Some\PAth\filename

    还要确保.whl文件与您使用的平台相同,请执行python -V以查明您运行的是哪个版本的python,如果是win32或64,请根据它安装正确的版本。


    在MacOS上,通过MacPorts将pip安装到MacPorts python2.7中,我不得不使用@dunes解决方案:

    1
    sudo python -m pip install some-package.whl

    在我的例子中,用MacPorts python代替了python,我用的是python2.7python3.5

    根据手册页,-m选项是"以脚本形式运行库模块"。

    (我以前运行过sudo port install py27-pip py27-wheel来首先将pipwheel安装到我的python 2.7安装中。)