Как вручную установить пакет в Python

Большинство пакетов в Python сейчас спроектированы так, чтобы быть совместимыми с менеджером пакетов pip. Но что если у вас есть пакеты, несовместимые с pip, и вам нужно установить пакет вручную? Сегодня мы разберем, как это делается.

Примечание редакции Pythonist: об установке пакетов через менеджер читайте в статье «Установка пакетов Python при помощи PIP».

Предварительные шаги:

  1. Загрузите пакет и извлеките его в локальный каталог.
  2. Если пакет включает в себя собственный набор инструкций по установке, следуйте им. В противном случае наиболее распространенным методом ручной установки пакета является реализация setup.py.

Установка пакетов Python с помощью setup.py

Чтобы установить пакет, содержащий файл setup.py, откройте командную строку или окно терминала и сделайте следующее:

  1. С помощью команды cd переместитесь в каталог, где находится файл setup.py
  2. Введите следующую команду: python setup.py install

Среда сборки setup.py

Пакеты, устанавливаемые при помощи setup.py, имеют требования относительно среды сборки, которые разработчики должны учитывать. Но некоторые требования опциональны.

Примеры

С помощью следующей команды проверьте, что у вас установлена ​​актуальная версия setuptools:

python -m pip install --upgrade setuptools

Включите именованные аргументы install_requires в setup.py. Отметим, что install_requires — это ключевое слово setuptools, используемое для указания минимальных требований к пакету. Например, это может выглядеть следующим образом:

install_requires=['<packagename>'],  # опциональное ключевое слово

Полные требования к сборке пакета для установки на основе setup.py изложены PyPA (Python Packaging Authority) в «Sample Project».

Sample Project

Sample Project — это пакет-шаблон с файлом setup.py для ручной установки пакета. Файл снабжен аннотациями, касающимися настройки скрипта и среды сборки пакета в целом. Sample Project можно найти на GitHub.

Основан Sample project на пакете setuptools. setup.py — это скрипт сборки для пакетов, созданных с помощью setuptools.

Пример setup.py (без аннотаций):

import setuptools

with open("README.md", "r") as fh:

    long_description = fh.read()

setuptools.setup(

    name="<template-package-username>", # Replace with your username

    version="1.0.0",

    author="<authorname>",

    author_email="<authorname@templatepackage.com>",

    description="<Template Setup.py package>",

    long_description=long_description,

    long_description_content_type="text/markdown",

    url="<https://github.com/authorname/templatepackage>",

    packages=setuptools.find_packages(),

    classifiers=[

        "Programming Language :: Python :: 3",

        "License :: OSI Approved :: MIT License",

        "Operating System :: OS Independent",

    ],

    python_requires='>=3.6',

)

Заключение

Итак, сегодня мы разобрали, как вручную установить пакеты в Python. А именно — как это сделать с помощью setup.py. 

Надеемся, данная статья была вам полезна! Успехов в написании кода!

Перевод статьи «How To Manually Install Python Packages».