Jak zainstalować pakiety Pythona z pliku tar.gz bez użycia pip install

81

Krótko mówiąc, mój komputer roboczy ma ograniczenia sieciowe, co oznacza, że ​​próba użycia pip installw cmd prowadzi tylko do przekroczenia limitu czasu / nie znalezienia błędów pakietu.

Na przykład; kiedy próbuję pip install seaborn: wprowadź opis obrazu tutaj

Zamiast tego próbowałem pobrać plik tar.gz pakietów, które chcę, jednak nie wiem, jak je zainstalować. Wyodrębniłem pliki z pliku tar.gz i znajduje się w nim plik „instalacyjny”, ale niewiele to dla mnie robi.

Gdyby ktoś mógł wyjaśnić, jak zainstalować pakiety Pythona w ten sposób bez używania pip installw systemie Windows, byłoby to niesamowite.

yenoolnairb
źródło

Odpowiedzi:

129

Możesz użyć pipdo tego bez korzystania z sieci. Zobacz w dokumentacji (wyszukaj „Zainstaluj określony plik archiwum źródłowego”). Każdy z nich powinien działać:

pip install relative_path_to_seaborn.tar.gz    
pip install absolute_path_to_seaborn.tar.gz    
pip install file:///absolute_path_to_seaborn.tar.gz    

Albo można rozpakować archiwum i korzystać setup.pybezpośrednio z albo pipalbo python:

cd directory_containing_tar.gz
tar -xvzf seaborn-0.10.1.tar.gz
pip install seaborn-0.10.1
python setup.py install

Oczywiście przed kontynuowaniem należy również pobrać wymagane pakiety i zainstalować je w ten sam sposób.

Jérôme
źródło
Daje to następujący błąd:You must give at least one requirement to install (maybe you meant "pip install file:///absolute path.."?)
yenoolnairb
i faktycznie wkroczyłem na ścieżkę na wypadek, gdybyś się zastanawiał!
yenoolnairb
Jeśli możesz pobrać na inny komputer i przenieść je na inne, możesz pobrać każdą potrzebną zależność i zainstalować ją w takiej kolejności, aby żądany pakiet miał wszystkie zależności i nie potrzebował już połączenia sieciowego. To znaczy, Azależy od B. Tak zainstalować B, a następnieA .
Hawkins
24

Możesz zainstalować archiwum bez wcześniejszego rozpakowywania. Po prostu przejdź do katalogu zawierającego .tar.gzplik z wiersza poleceń i wprowadź to polecenie:

pip install my-tarball-file-name.tar.gz

Używam Pythona 3.4.3 i to działa dla mnie. Nie mogę jednak powiedzieć, czy to zadziałaby na innych wersjach Pythona.

Sнаđошƒаӽ
źródło
3
Uruchamiając to na Pythonie 3.4.3 i pip 9.0.1 Otrzymuję błąd związany z plikiem tymczasowym: [Errno 2] No such file or directory: '/tmp/pip-anjip21-build/setup.py działa na Jessie (raspberry pi 3)
Magic_Matt_Man
@Magic Zobacz przykłady w oficjalnych dokumentach . Więc powinno działać. Z komunikatu o błędzie, który pokazałeś, wynika, że ​​archiwum, które próbujesz zainstalować, nie przestrzega prawidłowych konwencji nazewnictwa plików.
Sнаđошƒаӽ
1
pip install * .tar.gz zainstaluje wszystkie pakiety w katalogu ... po prostu próbuję pomóc :)
Lew
9

Dzięki połączonym odpowiedziom poniżej wszystko działa.

  • Najpierw trzeba było rozpakować plik tar.gz do folderu.
  • Następnie przed uruchomieniem python setup.py installtrzeba było wskazać cmd w kierunku właściwego folderu. Zrobiłem to przezpushd C:\Users\absolutefilepathtotarunpackedfolder
  • Następnie uruchomić python setup.py install

Dzięki Tales Padua & Hugo Honorem

yenoolnairb
źródło
Czy możesz edytować zmienne PATH swojego komputera? Jeśli tak, możesz dodać do niego Pythona i używać go w dowolnym miejscu bez konieczności używania pushd
Tales Pádua
Właściwie nie musisz rozpakowywać pliku tar.gz, aby go zainstalować. Spójrz na moją odpowiedź
Sнаđошƒаӽ
6

Zainstaluj go, uruchamiając

python setup.py install

Jeszcze lepiej, możesz pobrać z github. Zainstaluj git przez, apt-get install gita następnie wykonaj następujące kroki:

git clone https://github.com/mwaskom/seaborn.git
cd seaborn
python setup.py install
Tales Pádua
źródło
No such file or directory Może to mieć związek z konfiguracją moich plików i folderów. Python nie będzie w domyślnym miejscu Python normalnie zainstalować
yenoolnairb
rozpakuj z tar, przejdź do folderu, w którym znajduje się setup.py, a następnie uruchom powyższe polecenie
Tales Pádua
Czy muszę zmienić powyższy kod, aby wskazywał bezpośrednio, gdzie znajduje się rozpakowana smoła? Bo wciąż dostajęno such file or directory
yenoolnairb
Rozpakuj plik tar.gz gdzieś. Następnie z terminala przejdź do folderu, w którym został rozpakowany. Musisz być w folderze, w którym znajduje się plik setup.py, a następnie uruchomić to polecenie
Tales Pádua
Niestety github jest zablokowany na moim komputerze roboczym! Ale teraz już działa; dzięki
yenoolnairb
4

Dla tych, którzy używają python3, możesz użyć:

python3 setup.py install
Shersha Fn
źródło
3

Jeśli nie chcesz korzystać z instalacji PIP w ogóle, możesz wykonać następujące czynności:

1) Pobierz pakiet 2) Użyj 7 zip do rozpakowania plików tar. (Ponownie użyj 7 zip, aż zobaczysz folder o nazwie pakietu, którego szukasz. Np .: wordcloud)

Folder według nazwy „wordcloud”

3) Zlokalizuj folder biblioteki Python, w którym jest zainstalowany python, i wklej tam folder „WordCloud”

Folder biblioteki Python

4) Sukces !! Teraz możesz zaimportować bibliotekę i zacząć korzystać z pakietu.

wprowadź opis obrazu tutaj

SVK
źródło
1
Działa to doskonale w sytuacjach, w których generuje się użycie piperror(10054, 'An existing connection was forcibly closed by the remote host')
adin
0

Czy możesz sudo apt-get install python-seabornzamiast tego użyć ? Zasadniczo tar.gz jest po prostu plikiem zip zawierającym konfigurację, więc co chcesz zrobić, to rozpakować go, cd do miejsca, w którym został pobrany i użyć go w systemie gunzip -c seaborn-0.7.0.tar.gz | tar xf -Linux. Zmień słownik na nowy rozpakowany plik morski i wykonajpython setup.py install

Deusdeorum
źródło
Okej, więc przydałby mu się inny rozpinacz, taki jak 7-suwakowy, nie ma znaczenia, jakiego rozpinacza używa ...
Deusdeorum
może być tak czy inaczej, instrukcje są następujące: rozpakuj folder -> zmień słownik w linii poleceń do tego folderu -> wykonaj python setup.py install
Deusdeorum