Pesquisa de site

Como gerenciar pacotes Python usando PIP


PIP, o gerenciador de pacotes python, é usado para instalar, atualizar e remover pacotes escritos na linguagem de programação Python. Neste guia, discutiremos como instalar o pip e gerenciar pacotes python, como instalar, atualizar e remover pacotes usando pip. Além disso, veremos o que é ambiente virtual, como criá-lo e como isolar pacotes no ambiente virtual usando ferramentas venv e/ou virtualenv.

Instale o pip usando gerenciadores de pacotes

No Arch Linux e suas variantes como Antergos, Manjaro Linux, você pode instalar o pip usando o comando:

Python 2:

sudo pacman -S python2-pip python2-wheel python2-setuptools

Python 3:

sudo pacman -S python-pip python-wheel python-setuptools

No Fedora 21:

Python 2:

sudo yum upgrade python-setuptools
sudo yum install python-pip python-wheel

Python 3:

sudo yum install python3 python3-wheel

Fedora 22:

Python 2:

sudo dnf upgrade python-setuptools
sudo dnf install python-pip python-wheel

Python 3:

sudo dnf install python3 python3-wheel

Para obter versões mais recentes de pip, setuptools e wheel para Python 2, habilite o PyPA Copr Repo usando o comando:

dnf copr enable pypa/pypa

e então execute:

sudo dnf upgrade python-setuptools
sudo dnf install python-pip python-wheel

No CentOS/RHEL:

Pip e wheel não estão disponíveis nos repositórios padrão do CentOS e RHEL. Para instalar o pip no CentOS, RHEL, Scientific Linux e outros sistemas baseados em RPM, habilite o repositório EPEL usando o comando:

sudo yum install epel-release

E então execute o seguinte comando para instalar o pip:

sudo yum install python-pip
sudo yum install python-wheel

Como o pacote setup-tools está disponível nos repositórios padrão, você pode instalá-lo usando o comando:

sudo yum upgrade python-setuptools

Python 3:

sudo yum install python3-pip

openSUSE:

Python 2:

sudo zypper install python-pip python-setuptools python-wheel

Python 3:

sudo zypper install python3-pip python3-setuptools python3-wheel

Debian/Ubuntu:

Para Python 2.x:

sudo apt-get install python-pip

Para Python 3.x:

Substitua “python” por “python3” para instalar a versão Python 3.x.

sudo apt-get install python3-pip

Na versão Ubuntu 12.04, o pip3 não veio empacotado. Se estiver usando o Ubuntu 12.04, você pode instalar o pip3 usando os seguintes comandos:

sudo apt-get install python3-setuptools
sudo easy_install3 pip

Instalando pip a partir de binários

Se você quiser instalar o pip a partir de binários, basta executar:

wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py

Observe que get-pip.py também instalará setuptools e wheel. Como mencionei anteriormente, algumas distribuições Linux não possuem roda nos repositórios principais. Nesses casos, pode ser necessário adicionar alguns repositórios de terceiros, por exemplo EPEL.

pip já está instalado se você estiver usando binários Python 2 >=2.7.9 ou Python 3 >=3.4 baixados de python.org. No entanto, você precisará atualizar o pip usando o comando:

sudo pip install -U pip

Ou,

sudo pip install --upgrade pip

Para atualizar tudo (pip, setuptools, whell), execute:

sudo pip install --upgrade pip setuptools wheel

Para descobrir a versão instalada do pip/pip3, execute:

pip --version

Ou,

pip -V

A saída de exemplo seria:

pip 9.0.1 from /usr/lib/python3.6/site-packages (python 3.6)

Criando Ambientes Virtuais

Antes de instalar qualquer pacote python, é recomendável criar um ambiente virtual. Por que precisamos criar um ambiente virtual? Você pode perguntar. Porque os “ambientes virtuais” do Python nos permitem instalar um pacote Python em um local isolado, em vez de instalá-lo globalmente.

Digamos que você queira instalar um pacote python, por exemplo youtube-dl, que precisa da versão 1 do LibFoo, mas outro aplicativo requer a versão 2. Como você pode usar esses dois aplicativos? Se você instalar tudo em /usr/lib/python2.7/site-packages ou /usr/lib/python3.6/site-packages (ou qualquer que seja o padrão da sua plataforma localização é), é fácil acabar em uma situação em que você atualiza acidentalmente um aplicativo que não deveria ser atualizado. Para evitar isso, isolamos os pacotes no ambiente virtual. Todos os ambientes virtuais possuem seus próprios diretórios de instalação e não interagem nem entram em conflito entre si.

Podemos criar ambientes Python isolados usando dois módulos, a saber:

  1. venv,
  2. ambiente virtual.

Para Python 2.x, você precisa instalar o virtualenv. Para fazer isso, execute:

sudo pip install virtualenv

Vamos criar um ambiente virtual agora.

Usando virtualenv:

virtualenv <DIR_NAME>
source <DIR_NAME>/bin/activate

Para Python 3.x, você precisa instalar o venv. Em sistemas baseados em Ubuntu, você pode instalá-lo usando o comando:

sudo apt-get install python3-venv

Agora crie um ambiente virtual usando venv:

python3 -m venv <DIR_NAME>
source <DIR_NAME>/bin/activate

Depois de executar o comando acima, você será colocado em seu ambiente virtual imediatamente.

Para desativar o ambiente virtual e voltar ao shell normal, execute:

deactivate

Gerenciar pacotes Python usando Pip

Agora veremos o uso básico mais comum do pip com exemplos.

Para visualizar a lista de todos os comandos pip e opções gerais, execute:

pip

Você deverá ver uma saída parecida com a abaixo.

Para saber o que o comando de instalação faz, execute:

pip install --help

O uso mais comum do pip é instalar a partir do PyPi (Python Package Index). PyPi é um repositório que contém todos os pacotes criados pela comunidade de desenvolvedores em Python.

Instalar pacotes

Crie primeiro o ambiente virtual conforme mostrado abaixo:

Usando virtualenv:

virtualenv MYENV

Substitua MYENV pelo seu próprio nome.

Usando venv:

python3 -m venv MYENV

Finalmente, ative-o usando o comando:

source MYENV/bin/activate

Depois de executar o comando acima, você será colocado em seu ambiente virtual:

Agora é hora de instalar alguns pacotes. Para instalar um pacote, por exemplo youtube-dl, execute:

pip install youtube-dl

Este comando instalará o youtube-dl com todas as suas dependências.

Para instalar uma versão específica, execute:

pip install youtube_dl=2017.12.14

Para instalar uma versão diferente da versão especificada, execute:

pip install youtube_dl!=2017.12.14

Observe o '!" na frente do símbolo de igual.

Para instalar uma versão igual ou superior à versão especificada, execute:

pip install youtube_dl>=2017.12.14

Para instalar uma versão no intervalo específico, por exemplo maior ou igual a uma versão e menor que outra, execute:

pip install youtube_dl>=2017.12.14, <2017.12.20

Para instalar uma versão “compatível” com uma determinada versão:

pip install youtube_dl~=2017.12.14

Baixar pacotes

Para baixar um pacote com todas as dependências (sem instalá-lo), execute:

pip download youtube-dl

Listar todos os pacotes instalados

Para descobrir quais pacotes foram instalados pelo pip, execute:

pip freeze

Ou,

pip list

Esses comandos exibirão todos os pacotes instalados usando pip em seu sistema.

Pesquisar pacotes

Para procurar um pacote específico, por exemplo youtube-dl, execute:

pip search youtube-dl

Este comando irá pesquisar e exibir o resultado que corresponde à string "youtube-dl".

Atualizar pacotes

Para listar todos os pacotes desatualizados em um formato de coluna tabular simples, execute:

pip list --outdated --format=columns

Para atualizar um pacote desatualizado, execute:

pip install --upgrade youtube-dl

Também podemos despejar todos os pacotes em um arquivo e atualizá-los de uma só vez. Primeiro, exporte todos os arquivos para um arquivo:

pip freeze > mypackages.txt

Agora atualize todos os pacotes de uma vez usando o comando:

pip install -r mypackages.txt --upgrade

Ou,

pip install -r mypackages.txt -U

Se o comando acima não funcionou por algum motivo, use o seguinte comando para atualizar todos os pacotes de uma vez:

pip freeze --local | grep -v '^\e' | cut -d = -f 1 | xargs -n1 pip install -U

Exporte todos os pacotes instalados em um arquivo

Às vezes, você pode querer exportar todos os pacotes instalados em um arquivo para testá-los em um ambiente diferente. Para fazer isso, execute:

pip freeze > MYENV_packages.txt

Agora, desative o ambiente virtual atual:

deactivate

e crie um novo usando comandos:

virtualenv MYENV1

Substitua MYENV1 pelo seu próprio nome.

Usando venv:

python3 -m venv MYENV1

Ative o ambiente recém-criado:

source MYENV1/bin/activate

Agora, instale todos os pacotes que exportamos anteriormente.

pip install -r MYENV_packages.txt

Para instalar tudo de uma vez sem interação do usuário, execute:

pip install -r MYENV_packages.txt -y

Da mesma forma, você pode remover todos os pacotes da lista usando o comando:

pip uninstall -r MYENV_packages.txt -y

Ver informações do pacote

Para visualizar os detalhes de um pacote, execute:

$ pip show youtube-dl
Name: youtube-dl
Version: 2017.12.14
Summary: YouTube video downloader
Home-page: https://github.com/rg3/youtube-dl
Author: Sergey M.
Author-email: dstftw@gmail.com
License: UNKNOWN
Location: /home/sk/MYENV/lib/python3.6/site-packages
Requires:

Ver dependências do pacote

Podemos visualizar as dependências de todos os pacotes instalados usando a ferramenta “pipdeptree”.

Instale-o usando o comando:

pip install pipdeptree

Depois de instalado, você pode visualizar a árvore de dependências usando o comando:

pipdeptree

Desinstalar pacotes

Para desinstalar/remover um pacote instalado, execute:

pip uninstall youtube-dl

Para desinstalar vários pacotes, especifique-os separados por vírgulas como abaixo:

pip uninstall package1, package2

Para remover todos os pacotes python instalados usando pip, execute:

pip freeze | xargs pip uninstall -y

Às vezes, o pip não permite desinstalar pacotes pertencentes ao sistema operacional. Nesses casos, você pode desinstalar todos os pacotes que não pertencem ao sistema operacional usando o comando:

pip uninstall -y $(pip freeze | sed 's;==.*;;g' | tr '\n' ' ')

Como mencionei na seção anterior, podemos despejar todos os pacotes instalados em um arquivo e desinstalá-los da lista usando o comando:

pip uninstall -r MYENV_packages.txt -y

Nesta fase, você pode ter uma ideia sobre o pip e seu uso. Para mais detalhes, consulte a documentação oficial e a seção de ajuda do pip executando o seguinte comando:

pip --help

Ou apenas,

pip

Leitura sugerida:

  • Pipenv – a ferramenta de empacotamento Python oficialmente recomendada
  • Pipx – Instale e execute aplicativos Python em ambientes isolados

E isso é tudo por agora. Espero que isso tenha sido útil.

Recurso:

  • Página inicial do PIP

Artigos relacionados