Как установить пакеты Python из файла tar.gz без использования pip install
Короче говоря, мой рабочий компьютер имеет сетевые ограничения, что означает попытку использовать pip install в cmd, просто приводит к тайм-ауту/не обнаруживает ошибки пакета.
Например; когда я пытаюсь pip install seaborn :
Вместо этого я попытался загрузить файл tar.gz пакетов, которые мне нужны, однако я не знаю, как их установить. Я извлек файлы из файла tar.gz, и в нем есть файл «setup», но он не делает для меня ничего.
Если кто-то может объяснить, как установить пакеты python таким образом, не используя pip install для окон, которые были бы удивительными.
Poetry — прекрасная альтернатива pip (шпаргалка)
Poetry — это инструмент для управления зависимостями в Python проектах (аналог встроенного pip). Идея реализации данного инструмента пришла его создателю в связи с тем, что различные способы менеджмента пакетов (requirements.txt, setup.cfg, MANIFEST.ini и другие) показались создателю Poetry не очень-то удобными.
Предлагаю тем, кто пишет на Python, познакомиться с данным инструментом, так как это очень простой и удобный в использовании инструмент, применение которого может упростить ведение и разработку проекта.
Установка
Установить poetry на windows можно либо при помощи pip:
Либо более гибким вариантом через powershell:
Отличие от pip
Pip хранит данные о зависимостях в файле requirements.txt (название на самом-то деле может быть любое), poetry хранит информацию в файле pyproject.toml, однако, в случае с pip, в его файле хранится только список зависимостей с описанием версий, а в .toml хранится вся основная информация о проекте, что очень удобно, так как все данные собраны в одном месте (далее последует более подробное описание).
Чтобы установить зависимости в pip необходимо выполнить:
Что для poetry займет всего 2 слова:
Просмотр зависимостей в pip можно сделать только командой:
Однако будут показаны только актуальные версии библиотек, не будет возможности увидеть структуру всех пакетов с их зависимостями. В poetry в файле poetry.lock можно увидеть сведения обо всех установленных пакетах, команда:
Покажет древовидную структуру пакетов с их личными зависимостями.
Так же запуск проекта в pip (в случае с виртуальным окружением) создает неудобства, так как первым делом необходимо зайти в это самое окружение при помощи команды:
И только затем можно выполнять какие-либо изменения с проектом. В poetry нет необходимости активировать виртуальное окружение, достаточно лишь зайти в папку с проектом и начинать пользоваться командами. Poetry сам найдет нужное окружение. Также в poetry можно менять версию python без необходимости менять старое виртуальное окружение.
Это лишь малая часть преимуществ. Далее рассмотрим примеры команд и структуру poetry файлов.
pyproject.toml
Главный файл для poetry — это pyproject.toml. Все данные о проекты должны быть записаны в нём. При установке пакетов poetry берёт данные из этого файла и формирует файл с зависимостями poetry.lock (если уже есть готовый файл poetry.lock, то данные будут браться из него). Toml файл состоит из нескольких блоков, каждый из которых имеет свои особенности, рассмотрим данные блоки:
[tool.poetry] — содержит основную информацию о проекте, такую как:
name — имя проекта
version — версия проекта
description — описание проекта
license — лицензия проекта
authors — список авторов проекта в формате name <email>
maintainers — список менторов проекта формате name <email>
readme — readme файл проекта в формате README.rst или README.md
homepage — URL сайта проекта
repository — URL репозитория проекта
documentation- URL документации проекта
keywords — список ключевых слов проекта (макс: 5)
classifier — список PyPI классификаторов
[tool.poetry.dependencies] — содержит описание всех зависимостей проекта. Каждая зависимость должна иметь название с указанием версии, также присутствует возможность скачать проекта с github с указанием ветки/версии/тэга, например:
[tool.poetry.scripts] — в данном разделе можно описать различные сценарии или скрипты, которые будут выполняться при установке пакетов или при запуске приложения. Например:
main-run = ‘new_proj.main:run’ (после чего достаточно запустить poetry main-run и будет выполнен запуск функции run в файле new_prof/main.py)
[tool.poetry.extras] — в данном блоке описываются группы зависимостей, которые можно устанавливать отдельно:
Далее зависимости можно установить двумя способами:
[tool.poetry.urls] — помимо основных URL, указанных в [tool.poetry], можно указывать свои URL:
Основные методы
Чтобы создать новый проект с помощью Poetry, достаточно выполнить poetry new <название папки с проектом>. После чего создастся папка с названием вашего проекта, в этой папке будет лежать файл pyproject.toml.
Чтобы сделать пакетным менеджером poetry в уже имеющемся проекте, достаточно выполнить:
Далее будет предложено заполнить немного основной информации о проекте
Пример заполнения информации о проекте
Метод может принимать некоторые необязательные параметры:
—name: имя проекта
—description: описание проекта
—author: имя автора
—python: совместимые версии Python
—dependency: требуемый пакет с версией пакета
—dev-dependency: требования к разработке
После чего в проекте появится файл pyproject.toml, в котором вручную можно изменить любые данные.
install
Чтобы установить зависимости проекта достаточно выполнить команду:
Poetry считывает данные из pyproject.toml, строит дерево зависимостей проекта, разрешая проблемы с версиями зависимостей, и устанавливает все пакеты. Однако, если в проекте уже есть файл poetry.lock, то будут использоваться точные версии из этого файла.
Метод может принимать параметры:
—remove-untracked: удалит старые пакеты, которые больше не используются в проекте
—no-dev: dev пакеты не будут устанавливаться
update
Чтобы обновить версии зависимостей (тем самым обновив файл poetry.lock) достаточно выполнить:
Также есть возможность обновить лишь определенные пакеты:
Метод может принимать дополнительные параметры:
—no-dev : игнорирует обновление dev пакетов
—lock : не устанавливает и не обновляет пакеты, а только обновляет файл poetry.lock
Чтобы добавить новую библиотеку достаточно выполнить:
Можно указывать версию пакета:
Можно передать параметры:
—dev (-D): установит пакет в качестве dev зависимости
—path: путь к пакету (если пакет лежит локально)
—lock : не устанавливает зависимости, а только обновляет файл poetry.lock
remove
Чтобы удалить зависимость достаточно выполнить:
Дополнительно можно передать параметры:
—dev : удалит пакет из dev зависимостей
Чтобы посмотреть зависимости проекта достаточно выполнить:
результат poetry show
результат poetry show
Если необходимо посмотреть информацию о конкретном пакете:
результат poetry show pygame
результат poetry show pygame
Посмотреть дерево зависимостей проекта можно при помощи:
результат poetry show —tree
результат poetry show —tree
Также можно передать параметры:
—tree: список зависимостей в виде дерева
—latest (-l): показать последние версии проектов
—outdated (-o): показать последние версии только для устаревших пакетов
Чтобы запустить проект достаточно выполнить:
PyCharm & Poetry
В PyCharm 2021.3 добавили поддержку Poetry. Теперь при создании проекта можно сразу указать poetry основным пакетным менеджером. Перед использованием необходимо установить executable версию poetry (на windows через poweshell):
После чего можно без проблем выбрать Poetry при создании проекта:
Установка poetry как менеджер пакетов в Pycharm
Далее автоматически будет создан .toml файл:
Структура проекта
При установке пакетов через менеджер PyCharm файл pyproject.toml будет автоматически обновляться сам:
Загрузка пакета через PyCharm
Обновленный .toml
Версии зависимостей
При установке пакета можно указать точную версию проекта, например:
Но иногда есть необходимость указать диапазон версий пакета, чтобы получать обновления, в таком случае есть несколько способов указать диапазон:
How to install Python packages from the tar.gz file without using pip install
Long story short my work computer has network constraints which means trying to use pip install in cmd just leads to timing out/not finding package errors.
For example; when I try to pip install seaborn : 
Instead I have tried to download the tar.gz file of the packages I want, however, I do not know how to install them. I’ve extracted the files from the tar.gz file and there is a «setup» file within but it’s not doing much for me.
If someone could explain how to install python packages in this manner without using pip install on windows that would be amazing.
Как установить пакеты Python из файла tar.gz без использования pip install
Короче говоря, мой рабочий компьютер имеет сетевые ограничения, что означает, что попытка использовать pip install в cmd просто приводит к тайм-ауту / не обнаружению ошибок пакета.
Например; когда я пытаюсь pip install seaborn :
Вместо этого я попытался загрузить файл tar.gz нужных мне пакетов, однако я не знаю, как их установить. Я извлек файлы из файла tar.gz, и в нем есть файл «setup», но он мало что для меня делает.
Если бы кто-то мог объяснить, как установить пакеты Python таким образом, без использования pip install на окнах, это было бы удивительно.
7 ответов
Благодаря приведенным ниже ответам у меня все получилось.
- Сначала нужно распаковать файл tar.gz в папку.
- Затем перед запуском python setup.py install пришлось указать cmd в направлении нужной папки. Я сделал это pushd C:\Users\absolutefilepathtotarunpackedfolder
- Затем запустите python setup.py install
Спасибо Сказки Падуи и Хьюго Хонорем
Вы можете использовать pip для этого без использования сети. См. в документах (поиск «Установить определенный файл исходного архива») , Любой из них должен работать:
Или вы можете распаковать архив и использовать setup.py напрямую с pip или python :
Конечно, вы должны также загрузить необходимые пакеты и установить их таким же образом, прежде чем продолжить.
Если вы не хотите использовать PIP install atall, вы можете сделать следующее:
1) Загрузите пакет 2) Используйте 7 zip для распаковки tar-файлов. (Используйте 7 zip снова, пока не увидите папку с именем пакета, который вы ищете. Например: wordcloud)

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

4) Удачи !! Теперь вы можете импортировать библиотеку и начать использовать пакет.

Установите его, запустив
А еще лучше, вы можете скачать с GitHub. Установите git через apt-get install git и выполните следующие действия:
Можно ли вместо этого использовать sudo apt-get install python-seaborn ? В основном tar.gz — это просто zip-файл, содержащий настройки, поэтому вам нужно распаковать его, перейдите в место, где он был загружен, и используйте gunzip -c seaborn-0.7.0.tar.gz | tar xf — для linux. Измените словарь на новый разархивированный файл seaborn и выполните python setup.py install
Вы можете установить тарбол, не распаковывая его. Просто перейдите в каталог, содержащий ваш .tar.gz файл, из командной строки и введите следующую команду:
Я использую Python 3.4.3, и это работает для меня. Я не могу сказать, будет ли это работать на других версиях Python, хотя.