Як встановити пакети Python з файлу tar.gz без використання pip install


81

Коротше кажучи, мій робочий комп'ютер має мережеві обмеження, що означає, що спроба використання pip installв cmd просто призводить до тайм-ауту / не виявлення помилок пакета.

Наприклад; коли я намагаюся pip install seaborn: введіть тут опис зображення

Натомість я намагався завантажити файл tar.gz пакунків, які хочу, проте, я не знаю, як їх встановити. Я витягнув файли з файлу tar.gz, і всередині є файл "налаштування", але це не робить для мене багато.

Якби хтось міг пояснити, як таким чином встановлювати пакети python без використання pip installу вікнах, це було б чудово.

Відповіді:


129

Ви можете використовувати pipдля цього без використання мережі. Див. У документації (пошук "Встановити певний вихідний архівний файл"). Будь-хто з них повинен працювати:

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    

Або ви можете розпакувати архів і використовувати setup.pyбезпосередньо з одним pipабо python:

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

Звичайно, вам слід також завантажити необхідні пакети та встановити їх таким же чином, перш ніж продовжувати.


Це дає таку помилку:You must give at least one requirement to install (maybe you meant "pip install file:///absolute path.."?)
— yenoolnairb

і я насправді вступив на шлях, якщо вам це цікаво!
— yenoolnairb

Якщо ви можете завантажити на інший комп'ютер і перенести їх, можна завантажити кожну необхідну вам залежність та встановити їх таким чином у такому порядку, щоб бажаний пакет мав усі залежності, які йому не потрібні, і більше не потребував мережевого підключення. Тобто, Aзалежить від B. Тому встановити B, потім A.
— Хокінс,

24

Ви можете встановити tarball, не витягуючи його попередньо. Просто перейдіть до каталогу, що містить ваш .tar.gzфайл, із командного рядка та введіть цю команду:

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

Я запускаю python 3.4.3, і це працює для мене. Однак я не можу сказати, чи це буде працювати в інших версіях python.


3
Запустивши це на python 3.4.3 та pip 9.0.1, я отримую помилку, пов’язану з тимчасовим файлом: [Errno 2] No such file or directory: '/tmp/pip-anjip21-build/setup.py працює на Джессі (
— Raspberry

@Magic Див. Приклади в офіційних документах . Тож це має спрацювати. З повідомлення про помилку, яке ви показали, здається, що tarball, який ви намагаєтесь встановити, не відповідає правильним правилам іменування файлів.
— Sнаđошƒаӽ

1
pip install * .tar.gz встановить всі пакунки в каталог ... просто намагаюся допомогти :)
— Лев

9

Завдяки наведеним нижче відповідям у мене все працює.

  • Спочатку потрібно було розпакувати файл tar.gz у папку.
  • Потім перед запуском python setup.py installдовелося вказати cmd до правильної папки. Я зробив це доpushd C:\Users\absolutefilepathtotarunpackedfolder
  • Тоді біжи python setup.py install

Спасибі Казки Падуя та Уго Онорем


Чи можете ви редагувати змінні PATH на своїй машині? Якщо так, ви можете додати до нього python і використовувати python де завгодно, не використовуючи pushd
— Tales Pádua

Насправді вам не потрібно витягувати файл tar.gz, щоб встановити його. Погляньте на мою відповідь
— Sнаđошƒаӽ

6

Встановіть його, запустивши

python setup.py install

А ще краще, ви можете завантажити з github. Встановіть git через, apt-get install gitа потім виконайте такі дії:

git clone https://github.com/mwaskom/seaborn.git
cd seaborn
python setup.py install

No such file or directory Це може бути пов’язано з налаштуванням моїх файлів та папок. Python не буде на типовому місці, яке зазвичай встановлював би Python
— yenoolnairb

розпакуйте з tar, перейдіть до папки, де знаходиться setup.py, а потім запустіть команду вище
— Tales Pádua

Чи потрібно мені вносити зміни до наведеного вище коду, щоб направити його прямо туди, де знаходиться розпакований дьоготь? Тому що я все ще отримуюno such file or directory
— yenoolnairb

Розпакуйте tar.gz кудись. Потім з терміналу перейдіть до папки, де ви його витягли. Вам потрібно бути в папці, де знаходиться setup.py, а потім виконати цю команду
— Tales Pádua

Нещасний github заблокований на моєму робочому комп'ютері !! У мене зараз це працює; подяка
— yenoolnairb

4

Для тих, хто використовує python3, ви можете використовувати:

python3 setup.py install

3

Якщо ви не хочете використовувати інсталяцію PIP повністю, ви можете зробити наступне:

1) Завантажте пакет 2) Використовуйте 7 zip для розпакування файлів tar. (Використовуйте 7 zip ще раз, поки не побачите папку з назвою пакунку, який ви шукаєте. Наприклад: wordcloud)

Папка за назвою 'wordcloud'

3) Знайдіть папку бібліотеки Python, де встановлений python, і вставте туди саму папку «WordCloud»

Папка бібліотеки Python

4) Успіху !! Тепер ви можете імпортувати бібліотеку та почати використовувати пакет.

введіть тут опис зображення


1
Це ідеально підходить для ситуацій, коли використання піп генеруєerror(10054, 'An existing connection was forcibly closed by the remote host')
— adin

0

Чи можна використовувати sudo apt-get install python-seabornзамість цього? В основному tar.gz - це просто zip-файл, що містить інсталяцію, тож ви хочете розпакувати його, cd до місця, де він завантажується та використовується gunzip -c seaborn-0.7.0.tar.gz | tar xf -для Linux. Змініть словник на новий розпакований файл seaborn і запустітьpython setup.py install


Гаразд, щоб він міг використати інший розпакувальник, такий як 7-zip, досить неважливо, який розпакувальник він використовує ..
— Deusdeorum

У будь-якому випадку інструкції можуть бути такими: розпакуйте папку -> змініть словник у своєму командному рядку в цю папку -> виконайтеpython setup.py install
— Deusdeorum
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.