Como instalo um pacote Python com um arquivo .whl?


873

Estou com problemas para instalar um pacote Python na minha máquina Windows e gostaria de instalá-lo com os binários do Windows, de Christoph Gohlke. (Que, na minha experiência, aliviou muito do barulho de muitas outras instalações de pacotes). No entanto, apenas arquivos .whl estão disponíveis.

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

Mas como instalo arquivos .whl?

Notas

  • Encontrei documentos na roda , mas eles não parecem tão diretos ao explicar como instalar arquivos .whl.
  • Esta questão é uma duplicata com esta questão , que não foi respondida diretamente.


13
O que levou essa mudança de exe para whl? Geralmente, as pessoas tentam tornar as coisas mais fáceis de usar do que difíceis.
rhaskett

5
@rhaskett O benefício comparado ao .exe é que os editores precisam carregar apenas uma roda (geralmente) para suportar todas as versões do Python. Você está certo, porém, as rodas são menos fáceis para as pessoas que tentam instalar pacotes. Seria legal se você pudesse clicar duas vezes nos arquivos .whl.
Coronel Panic


2
pip install ...não requer o pacote de rodas ; pip wheel ...faz.
Cgohlke 4/16

Respostas:


1039

Eu apenas usei o seguinte, que era bastante simples. Primeiro abra um console e depois CD para o local em que você baixou o arquivo, como some-package.whl e use

pip install some-package.whl

Nota: se o pip.exe não for reconhecido, você poderá encontrá-lo no diretório "Scripts" de onde o python foi instalado. Se o pip não estiver instalado, esta página poderá ajudar: Como instalar o pip no Windows?

Nota: para esclarecimentos
Se você copiar o *.whlarquivo para sua unidade local (por exemplo, C: \ some-dir \ some-file.whl ), use os seguintes parâmetros da linha de comando -

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

45
Você não precisa pip install wheel. O comando pip install some-package.whlé suficiente. Verifique se o pip está atualizado apenas, conforme declarado por burhan-khalid.
divenex 23/03

7
Além disso, você deve abrir o prompt de comando como administrador, a fim de pip executado no Windows
Mr Alexander

60
python -m pip install some-package.whltambém funciona se o pip não for encontrado no PATH.
Dunes

32
Instalar um módulo Python em uma configuração offline é irritante. Sem pip obviamente. OK, então há um setup.py ... Mas não funciona? Oh, isso requer ferramentas de instalação. Maravilhoso. Ok, instale setuptools - o que é isso, .whl? Oh, isso requer pip! Parece que estou preso em um loop.
GVH

7
Para python 3 eu tenho usado em pip3vez de pip(eu tinha 2,7 e agora tenho 3,4). De qualquer forma, este é um lembrete amigável que às vezes pip3é o que você precisa.
geneorama

63

Primeiro, verifique se você atualizou o pip para ativar o suporte de roda:

pip install --upgrade pip

Em seguida, para instalar a partir do wheel, forneça o diretório em que o wheel é baixado. Por exemplo, para instalar package_name.whl:

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

11
O que é "roda"?
Peter Mortensen

2
Use sem --use-wheelno pip 19.0.1 (python 2.7)
Rado

1
@PeterMortensen o formato de pacote, o que whlé uma abreviatura para
OrangeDog

19

Estou no mesmo barco que o OP.

Usando um prompt de comando do Windows, no diretório:

C:\Python34\Scripts>
pip install wheel

parecia funcionar.

Mudando o diretório para o local onde o whl estava localizado, ele apenas diz 'pip não é reconhecido'. Voltando a C:\Python34\Scripts>, e usando o comando completo acima para fornecer o local 'onde / seu / baixado', ele diz Requirement 'scikit_image-...-win32.whl' looks like a filename, but the filename does not exist.

Então, larguei uma cópia do .whl no Python34 / Scripts, executei exatamente o mesmo comando novamente (com o --find-links=ainda indo para a outra pasta) e desta vez funcionou.


10
@EinarSundgren Não concordo, ele listou todas as etapas que o levaram a resolver o problema da operação.
runDOSrun

1
Para evitar ter que ficar no C:\Python34\Scriptsdiretório ao executar o pip, adicione esse diretório ao caminho do sistema. Para quem não sabe como: windowsitpro.com/systems-management/…
Godsmith

3
Um exemplo extra, depois de abrir o prompt de comando, colei isso e pressionei enter. Nada mais é necessário: C:\Python34\python.exe -m pip install requests ele baixou automaticamente o pacote 'solicitações' e o instalou.
Dennis Jaheruddin

Este último comentário funcionou perfeitamente para mim. Pode ser publicado como resposta!
Yohan Obadia

19

Existem várias versões de arquivo no site do grande Christoph Gohlke.

Algo que eu achei importante ao instalar rodas neste site é primeiro executá-lo no console do Python:

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

para que você saiba qual versão deve instalar no seu computador. Escolher a versão errada pode falhar na instalação do pacote (especialmente se você não usar a tag CPython correta, por exemplo, cp27).


1
Obrigado, estava com problemas para encontrar esta informação! No entanto, não sei como ler a saída para determinar qual versão eu preciso.
Johndt6


8

No Windows, você não pode simplesmente atualizar usando pip install --upgrade pip, porque o pip.exeestá em uso e haveria um erro ao substituí-lo. Em vez disso, você deve atualizar pipassim:

easy_install --upgrade pip

Em seguida, verifique a pipversão:

pip --version

Se mostrar 6.xséries, há suporte para as rodas.

Somente então, você pode instalar um pacote de rodas como este:

pip install your-package.whl

1
Acabei de atualizar o pip no Windows 7 usando pip install --upgrade pipe funcionou bem - de modo que parte do que você diz parece estar incorreta.
22616 martineau

1
Talvez os caras do pip percebam isso e resolvam o problema nas versões mais recentes ... não sei. Pelo menos quando a resposta foi postada (no início de 2015) eu encontrei o erro.
Rockallite 17/07/2016

Você provavelmente está certo. Na verdade, na maioria das vezes, o pip me diz que há uma versão mais nova disponível e se oferece para atualizar-se, por isso raramente faço isso manualmente.
22616 martineau

1
Correndo Python 3.5.2 no Windows 10, "python -m pip instalar --upgrade pip" apenas atualizado com sucesso pip-8.1.1 para pip-8.1.2
Dave Burton

6

Para poder instalar arquivos de roda com um simples clique duplo, execute um dos seguintes procedimentos:

1) Execute dois comandos na linha de comando sob privilégios de administrador:

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

2) Como alternativa, eles podem ser copiados em um wheel.batarquivo e executados com a caixa de seleção 'Executar como administrador' nas propriedades.

Presume-se que o PS pip.exe esteja no PATH.

Atualizar:

(1) Esses podem ser combinados em uma linha:

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

(2) A sintaxe para arquivos .bat é um pouco diferente:

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

Também sua saída pode ser mais detalhada:

@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

veja minha postagem no blog para obter detalhes.


Útil! Obrigado, axil e Anthony. Presumivelmente, para evitar a dependência das Scripts pasta estar no caminho, você poderia usar: cmd / c python -m pip instalar "% 1" e pausa
Dave Burton

Bem, eu estava errado. Você precisa usar o pip.exe. No entanto, outro problema é que, se você usar o comando ftype, como mostrado, a "pausa" será executada no prompt de comando, em vez de ser armazenada no registro como parte da associação do arquivo. Você precisará executar o regedit para adicionar o "& pause" no comando shell no registro. (Basta procurar o registro para pythonwheel.)
Dave Burton

@DaveBurton Corrigi e atualizei minha resposta. Obrigado.
27417

3

EDIT: ISSO NÃO É MAIS UMA PARTE DO PIP

Para evitar o download desses arquivos, você pode tentar:

pip install --use-wheel pillow

Para mais informações, consulte isto .


certifique-se de ter instalado a versão mais recente do pip antes via python -m pip install --upgrade pip
andyw

2

Caso você não consiga instalar o pacote específico diretamente usando o PIP.

Você pode fazer o download de um .whlpacote específico (roda) em - https://www.lfd.uci.edu/~gohlke/pythonlibs/

CD (Alterar diretório) para o pacote baixado e instale-o manualmente por -
pip install PACKAGENAME.whl
ex:
pip install ad3‑2.1‑cp27‑cp27m‑win32.whl


1

A única maneira de conseguir instalar o NumPy foi a seguinte:

Eu baixei o NumPy aqui https://pypi.python.org/pypi/numpy

Este módulo

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

Execução de comando a partir do caminho de instalação do Python no 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 .: Eu instalei no Windows 10.


1

Você pode instalar o arquivo .whl usando pip install filename. Apesar de usá-lo neste formulário, ele deve estar no mesmo diretório da sua linha de comando; caso contrário, especifique o nome do arquivo completo, juntamente com o endereço como pip install C:\Some\PAth\filename.

Verifique também se o arquivo .whl é da mesma plataforma que você está usando, faça um python -Vpara descobrir qual versão do Python você está executando e se for win32 ou 64, instale a versão correta de acordo com ela.


1

O que fiz foi primeiro atualizar o pip usando o comando: pip install --upgrade pipe também instalei o wheel usando o comando: pip install wheele então funcionou perfeitamente.

Espero que funcione para você, eu acho.


0

Os novos usuários de Python no Windows geralmente esquecem de adicionar o diretório \ Scripts do Python à variável PATH durante a instalação. Eu recomendo usar o lançador Python e executar pip como um script com o -mswitch. Em seguida, você pode instalar as rodas para uma versão específica do Python (se mais de uma estiver instalada) e o diretório Scripts não precisa estar no PATH. Portanto, abra a linha de comando, navegue (com o cdcomando) até a pasta em que o arquivo .whl está localizado e digite:

py -3.6 -m pip install your_whl_file.whl

Substitua 3.6pela sua versão do Python ou simplesmente digite -3se a versão desejada do Python aparecer primeiro no PATH. E com um ambiente virtual ativo: py -m pip install your_whl_file.whl.

Obviamente, você também pode instalar pacotes do PyPI dessa maneira, por exemplo

py -3.6 -m pip install pygame

0

Eu sugeriria a maneira exata de como instalar o arquivo .whl. Inicialmente, enfrentei muitos problemas, mas depois resolvi: eis o meu truque para instalar arquivos .whl.

Siga as etapas corretamente para obter um módulo importado

  1. Verifique se o arquivo .whl está na pasta python 2.7 / 3.6 / 3.7 / ... Inicialmente, quando você baixa o arquivo .whl, o arquivo é mantido na pasta baixada, minha sugestão é alterar a pasta. Isso facilita a instalação do arquivo.
  2. Abra o prompt de comando e abra a pasta em que você manteve o arquivo digitando

cd c: \ python 3.7

3.Agora, digite o comando escrito abaixo

>py -3.7(version name) -m pip install (file name).whl
  1. Clique em Enter e certifique-se de inserir a versão que está usando no momento com o nome de arquivo correto.

  2. Depois de pressionar enter, aguarde alguns minutos e o arquivo será instalado e você poderá importar o módulo específico.

  3. Para verificar se o módulo foi instalado com sucesso, importe o módulo para o modo inativo e verifique-o.

Obrigado:)


0

Faça o download do pacote (.whl).

Coloque o arquivo dentro da pasta de scripts do diretório python

C:\Python36\Scripts

Use o prompt de comando para instalar o pacote.

C:\Python36\Scripts>pip install package_name.whl

-1

No MacOS, com o pipinstalado via MacPorts no MacPorts python2.7, tive que usar a solução @Dunes:

sudo python -m pip install some-package.whl

Onde pythonfoi substituído pelo python MacPorts no meu caso, que é python2.7oupython3.5 para mim.

o -m opção é "Executar módulo da biblioteca como script", de acordo com a página de manual.

(Eu já havia executado anteriormente sudo port install py27-pip py27-wheelpara instalar pipe instalar wheelminha python 2.7.)

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.