Wie installiere ich ein Python-Paket mit einer .whl-Datei?

873

Ich habe Probleme bei der Installation eines Python-Pakets auf meinem Windows-Computer und möchte es mit den Windows-Binärdateien von Christoph Gohlke installieren. (Was meiner Erfahrung nach die Aufregung bei vielen anderen Paketinstallationen erheblich verringert hat). Es sind jedoch nur .whl-Dateien verfügbar.

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

Aber wie installiere ich .whl-Dateien?

Anmerkungen

  • Ich habe Dokumente auf dem Rad gefunden , aber sie scheinen nicht so einfach zu sein, wenn es darum geht, die Installation von .whl-Dateien zu erklären.
  • Diese Frage ist ein Duplikat mit dieser Frage , die nicht direkt beantwortet wurde.
e9t
quelle
12
Was hat diesen Wechsel von exe zu whl überhaupt veranlasst? Normalerweise versuchen die Leute, die Dinge einfacher zu bedienen als schwieriger.
Rhaskett
4
@rhaskett Der Segen im Vergleich zu .exe ist, dass Publisher (normalerweise) nur ein Rad hochladen müssen, um alle Python-Versionen zu unterstützen. Sie haben jedoch Recht, Räder sind für Leute, die versuchen, Pakete zu installieren, weniger einfach. Es wäre schön, wenn Sie auf die .whl-Dateien doppelklicken könnten.
Colonel Panic
Mögliches Duplikat von Wie installiere ich Python-Bibliotheken?
Trilarion
1
pip install ...nicht das erfordert Rad - Paket; pip wheel ...tut.
Cgohlke

Antworten:

1038

Ich habe nur das Folgende verwendet, was ziemlich einfach war. Öffnen Sie zuerst eine Konsole und dann eine CD, auf die Sie Ihre Datei wie some-package.whl heruntergeladen haben, und verwenden Sie sie

pip install some-package.whl

Hinweis: Wenn pip.exe nicht erkannt wird, finden Sie es möglicherweise im Verzeichnis "Scripts", in dem Python installiert wurde. Wenn pip nicht installiert ist, kann diese Seite helfen: Wie installiere ich pip unter Windows?

Hinweis: Zur Verdeutlichung
Wenn Sie die *.whlDatei auf Ihr lokales Laufwerk kopieren (z. B. C: \ some-dir \ some-file.whl ), verwenden Sie die folgenden Befehlszeilenparameter:

pip install C:/some-dir/some-file.whl
kpierce8
quelle
45
Sie nicht brauchen pip install wheel. Der Befehl pip install some-package.whlist ausreichend. Stellen Sie nur sicher, dass pip aktualisiert wird, wie von burhan-khalid angegeben.
Divenex
7
Außerdem sollten Sie die Eingabeaufforderung als Administrator öffnen, um pip in Windows auszuführen
Herr Alexander
60
python -m pip install some-package.whlfunktioniert auch, wenn pip nicht in PATH gefunden wird.
Dünen
31
Die Installation eines Python-Moduls in einer Offline-Einstellung ist ärgerlich. Offensichtlich kein Pip. OK, also gibt es eine setup.py ... Aber es funktioniert nicht? Oh, es erfordert Setuptools. Wunderbar. Okay, installuptools installieren - was ist das, .whl? Oh, das erfordert Pip! Es fühlt sich an, als ob ich in einer Schleife stecke.
GVH
6
Für Python 3 habe ich pip3statt pip(ich hatte 2.7 und jetzt 3.4) verwendet. Auf jeden Fall ist dies eine freundliche Erinnerung, die manchmal das pip3ist, was Sie brauchen.
Genorama
63

Stellen Sie zunächst sicher, dass Sie Pip aktualisiert haben, um die Radunterstützung zu aktivieren:

pip install --upgrade pip

Geben Sie dann zum Installieren vom Rad das Verzeichnis an, in das das Rad heruntergeladen wird. Zum Beispiel zum Installieren package_name.whl:

pip install --use-wheel --no-index --find-links=/where/its/downloaded package_name
Burhan Khalid
quelle
10
Was ist "Rad"?
Peter Mortensen
2
Verwendung ohne --use-wheelin Pip 19.0.1 (Python 2.7)
Rado
1
@ PeterMortensen das Paketformat, was whlist eine Abkürzung für
OrangeDog
19

Ich bin im selben Boot wie die OP.

Verwenden einer Windows-Eingabeaufforderung aus dem Verzeichnis:

C:\Python34\Scripts>
pip install wheel

schien zu funktionieren.

Wenn Sie das Verzeichnis in das Verzeichnis ändern, in dem sich das Whl befindet, wird nur angezeigt, dass "Pip nicht erkannt wird". Gehen Sie zurück zu C:\Python34\Scripts>und verwenden Sie dann den vollständigen Befehl oben, um den Speicherort "wo / sein / heruntergeladen" anzugeben Requirement 'scikit_image-...-win32.whl' looks like a filename, but the filename does not exist.

Also habe ich eine Kopie der .whl in Python34 / Scripts abgelegt, genau denselben Befehl erneut ausgeführt (wobei der Befehl immer --find-links=noch in den anderen Ordner wechselt), und diesmal hat es funktioniert.

Patrick
quelle
10
@EinarSundgren Ich bin anderer Meinung, er listete alle Schritte auf, die ihn dazu führten, das Problem von op zu lösen.
runDOSrun
1
C:\Python34\ScriptsFügen Sie dieses Verzeichnis stattdessen dem Systempfad hinzu, um zu vermeiden, dass Sie beim Ausführen von pip im Verzeichnis stehen müssen . Für diejenigen , die nicht wissen , wie: windowsitpro.com/systems-management/...
Godsmith
3
Ein zusätzliches Beispiel, nachdem ich die Eingabeaufforderung geöffnet habe, habe ich dies einfach eingefügt und die Eingabetaste gedrückt. Sonst nichts erforderlich: C:\Python34\python.exe -m pip install requests Das Paket "Anfragen" wurde automatisch heruntergeladen und installiert.
Dennis Jaheruddin
Dieser letzte Kommentar hat bei mir perfekt funktioniert. Könnte als Antwort gepostet werden!
Yohan Obadia
19

Auf der Website von Christoph Gohlke gibt es mehrere Dateiversionen.

Was ich bei der Installation von Rädern von dieser Site als wichtig empfunden habe, ist, dies zuerst über die Python-Konsole auszuführen:

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

damit Sie wissen, welche Version Sie für Ihren Computer installieren sollten. Wenn Sie die falsche Version auswählen, schlägt die Installation des Pakets möglicherweise fehl (insbesondere, wenn Sie nicht das richtige CPython-Tag verwenden, z. B. cp27).

Elachell
quelle
1
Vielen Dank, ich hatte Probleme, diese Informationen zu finden! Ich bin mir jedoch nicht sicher, wie ich die Ausgabe lesen soll, um festzustellen, welche Version ich benötige.
Johndt6
13

Sie müssen pip.exe an der Eingabeaufforderung auf meinem Computer ausführen. Ich tippeC:/Python27/Scripts/pip2.exe install numpy

Stahl
quelle
1
Ich habe kein ScriptsVerzeichnis. Wird pip nicht regelmäßig installiert?
jozxyqk
@jozxyqk: nein. Installationsanweisungen finden Sie hier: pip.pypa.io/en/latest/installing.html
Godsmith
8

Unter Windows können Sie nicht einfach ein Upgrade mit durchführen pip install --upgrade pip, da das pip.exeverwendet wird und beim Ersetzen ein Fehler auftreten würde. Stattdessen sollten Sie pipwie folgt aktualisieren :

easy_install --upgrade pip

Dann überprüfen Sie die pipVersion:

pip --version

Wenn es 6.xSerien zeigt , gibt es Radstütze.

Nur dann können Sie ein Radpaket wie folgt installieren:

pip install your-package.whl
Rockallite
quelle
1
Ich habe gerade pip unter Windows 7 mit aktualisiert pip install --upgrade pipund es hat gut funktioniert - so dass ein Teil von dem, was Sie sagen, falsch zu sein scheint.
Martineau
1
Vielleicht erkennen die Pip-Leute das und lösen das Problem in neueren Versionen ... Ich weiß es nicht. Zumindest als die Antwort veröffentlicht wurde (Anfang 2015), bin ich auf den Fehler gestoßen.
Rockallite
Du hast wahrscheinlich Recht. Tatsächlich sagt mir Pip die meiste Zeit, dass es eine neuere Version davon gibt, und bietet an, sich selbst zu aktualisieren, so dass ich es selten manuell mache.
Martineau
1
Unter Python 3.5.2 unter Windows 10 hat "python -m pip install --upgrade pip" gerade erfolgreich pip-8.1.1 auf pip-8.1.2 aktualisiert
Dave Burton
6

Um Raddateien mit einem einfachen Doppelklick installieren zu können, haben Sie folgende Möglichkeiten:

1) Führen Sie zwei Befehle in der Befehlszeile unter Administratorrechten aus:

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

2) Alternativ können sie in eine wheel.batDatei kopiert und mit dem Kontrollkästchen "Als Administrator ausführen" in den Eigenschaften ausgeführt werden.

PS pip.exe befindet sich vermutlich im PATH.

Aktualisieren:

(1) Diese können in einer Zeile zusammengefasst werden:

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

(2) Die Syntax für .bat-Dateien unterscheidet sich geringfügig:

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

Auch seine Ausgabe kann ausführlicher gemacht werden:

@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

Weitere Informationen finden Sie in meinem Blogbeitrag .

Axil
quelle
Nützlich! Vielen Dank, Axil & Anthony. Vermutlich könnten Sie Folgendes verwenden, um die Abhängigkeit vom Ordner "Scripts" im Pfad zu vermeiden: cmd / c python -m pip install "% 1" & pause
Dave Burton
Nun, ich habe mich geirrt. Sie müssen pip.exe verwenden. Ein weiteres Problem ist jedoch, dass bei Verwendung des Befehls ftype wie gezeigt die "Pause" an der Eingabeaufforderung ausgeführt wird, anstatt als Teil der Dateizuordnung in der Registrierung gespeichert zu werden. Sie müssen regedit ausführen, um das "& pause" im Shell-Befehl in der Registrierung hinzuzufügen. (Durchsuchen Sie einfach die Registrierung nach Pythonrad.)
Dave Burton
@ DaveBurton Ich habe meine Antwort korrigiert und aktualisiert. Vielen Dank.
Axil
3

EDIT: DIESES NICHT MEHR IST EIN TEIL VON PIP

Um zu vermeiden, dass Sie solche Dateien herunterladen müssen, können Sie Folgendes versuchen:

pip install --use-wheel pillow

Weitere Informationen finden Sie hier .

andyw
quelle
Stellen Sie sicher, dass Sie die neueste Version von Pip installiert haben, bevor Sie über Python -m Pip installieren --upgrade pip
andyw
2

Falls Sie ein bestimmtes Paket nicht direkt mit PIP installieren können.

Sie können ein bestimmtes .whl(Rad-) Paket unter https://www.lfd.uci.edu/~gohlke/pythonlibs/ herunterladen.

CD (Verzeichnis ändern) in das heruntergeladene Paket und installieren Sie es manuell durch - Beispiel
pip install PACKAGENAME.whl
:
pip install ad3‑2.1‑cp27‑cp27m‑win32.whl

Kiran Jasvanee
quelle
1

Ich konnte NumPy nur wie folgt installieren:

Ich habe NumPy von hier heruntergeladen: https://pypi.python.org/pypi/numpy

Dieses Modul

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

Befehlsausführung über den Installationspfad von Python in PowerShell

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.: Ich habe es unter Windows 10 installiert.

Vladimir
quelle
1

Sie können die .whl-Datei mithilfe von installieren pip install filename. Um es in diesem Formular zu verwenden, sollte es sich im selben Verzeichnis wie Ihre Befehlszeile befinden. Andernfalls geben Sie den vollständigen Dateinamen sowie die Adresse wie an pip install C:\Some\PAth\filename.

Stellen Sie außerdem sicher, dass sich die .whl-Datei auf derselben Plattform befindet, die Sie verwenden, python -Vund ermitteln Sie, welche Python-Version Sie ausführen. Wenn es sich um Win32 oder 64 handelt, installieren Sie die entsprechende Version.

Aklank Jain
quelle
1

Was ich getan habe, war zuerst den Pip mit dem Befehl zu aktualisieren: pip install --upgrade pipund dann habe ich auch das Rad mit dem Befehl installiert: pip install wheelund dann hat es perfekt funktioniert.

Hoffe, es funktioniert für Sie, denke ich.

Saurabh Kumar
quelle
0

Neue Python-Benutzer unter Windows vergessen häufig, während der Installation das Verzeichnis \ Scripts von Python zur Variablen PATH hinzuzufügen. Ich empfehle, den Python-Launcher zu verwenden und pip als Skript mit dem -mSwitch auszuführen . Dann können Sie die Räder für eine bestimmte Python-Version installieren (wenn mehr als eine installiert ist) und das Skriptverzeichnis muss sich nicht im PATH befinden. Öffnen Sie also die Befehlszeile, navigieren Sie (mit dem cdBefehl) zu dem Ordner, in dem sich die .whl-Datei befindet, und geben Sie Folgendes ein:

py -3.6 -m pip install your_whl_file.whl

Ersetzen Sie 3.6durch Ihre Python-Version oder geben Sie einfach ein, -3wenn die gewünschte Python-Version zuerst im PFAD angezeigt wird. Und mit einer aktiven virtuellen Umgebung : py -m pip install your_whl_file.whl.

Natürlich können Sie auf diese Weise auch Pakete von PyPI installieren, z

py -3.6 -m pip install pygame
skrx
quelle
0

Ich würde Ihnen vorschlagen, wie Sie die .whl-Datei genau installieren. Anfangs hatte ich viele Probleme, aber dann habe ich es gelöst. Hier ist mein Trick, um .whl-Dateien zu installieren.

Befolgen Sie die Schritte ordnungsgemäß, um ein Modul zu importieren

  1. Stellen Sie sicher, dass Ihre .whl-Datei im Ordner python 2.7 / 3.6 / 3.7 / .. gespeichert ist. Wenn Sie die .whl-Datei herunterladen, wird die Datei zunächst im heruntergeladenen Ordner gespeichert. Mein Vorschlag ist, den Ordner zu ändern. Dies erleichtert die Installation der Datei.
  2. Öffnen Sie die Eingabeaufforderung und öffnen Sie den Ordner, in dem Sie die Datei aufbewahrt haben, indem Sie eingeben

cd c: \ python 3.7

3. Geben Sie nun den unten angegebenen Befehl ein

>py -3.7(version name) -m pip install (file name).whl
  1. Klicken Sie auf die Eingabetaste und stellen Sie sicher, dass Sie die aktuell verwendete Version mit dem richtigen Dateinamen eingeben.

  2. Wenn Sie die Eingabetaste drücken, warten Sie einige Minuten. Die Datei wird installiert und Sie können das jeweilige Modul importieren.

  3. Um zu überprüfen, ob das Modul erfolgreich installiert wurde, importieren Sie das Modul im Leerlauf und überprüfen Sie es.

Vielen Dank:)

Divesh Jain
quelle
0

Laden Sie das Paket herunter (.whl).

Legen Sie die Datei im Skriptordner des Python-Verzeichnisses ab

C:\Python36\Scripts

Verwenden Sie die Eingabeaufforderung, um das Paket zu installieren.

C:\Python36\Scripts>pip install package_name.whl
Tono Kuriakose
quelle
-1

Unter MacOS, pipdas über MacPorts in MacPorts python2.7 installiert war, musste ich die @ Dunes-Lösung verwenden:

sudo python -m pip install some-package.whl

Wo pythonwurde in meinem Fall durch die MacPorts-Python ersetzt, was ist python2.7oder python3.5für mich.

Die -mOption lautet "Bibliotheksmodul als Skript ausführen" gemäß der Manpage.

(Hatte ich vorher laufen sudo port install py27-pip py27-wheelzu installieren pipund wheelin meine Python 2.7 Installation zuerst.)

Demis
quelle