Создайте свой первый пакет pip

Оригинал статьи Deepak Kumar: Build Your First pip Packagearrow-up-right от 19-09-2018.

Если вы работаете на Python, вам нужно понимать pip. В этом посте мы рассмотрим, как создать и опубликовать пакет pip. Пип-пип-ура!

В этом руководстве мы узнаем, как создать пакет Python/pip. Если ваши требования соответствуют любому из них, это руководство для вас.

  • Вы хотите сделать свою платформу сценариев независимой.

  • Вы не хотите копировать исполняемый скрипт в каждую нужную вам систему.

  • Вы хотите сделать свои скрипты Python общедоступными для всех и хотите помочь сообществу.

Мы используем pip для достижения того же. Мы сможем легко установить скрипт Python (в комплекте с пакетом pip) в любой системе после выполнения этого руководства. Код этого руководства доступен на GitHub здесьarrow-up-right, а пакет pip - здесьarrow-up-right.

circle-info

Проверено с Python 2 и Python 3 в *nix и Windows.

1. Зарегистрируйтесь

Сообщество Python поддерживает репозиторий, аналогичный npmarrow-up-right, для пакетов с открытым исходным кодом. Если вы хотите сделать свой пакет общедоступным, вы можете загрузить его на PyPi. Итак, прежде всего зарегистрируйтесь на PyPi: https://pypi.org/account/register/arrow-up-right.

Я предполагаю, что у вас есть учетная запись GitHubarrow-up-right, куда вы загрузите код своего пакета. Если вы хотите сохранить конфиденциальность своего пакета, пропустите этот шаг. Мы будем использовать README.md непосредственно из вашего проекта GitHub для этого руководства, и он будет использоваться в качестве документации вашего пакета.

2. Проверка необходимых инструментов

Убедитесь, что в вашей системе установлены Python и pip. Чтобы проверить установки:

python -V # для версии Python (2/3)
python -m pip --version

Приведенные выше команды должны дать вам правильный вывод версии. Если нет, установите Python и pip в свою систему.

Установите необходимые пакеты:

  • setuptools - это библиотека процесса разработки пакетов, предназначенная для создания и распространения пакетов Python.

  • wheel - Пакет wheelarrow-up-right предоставляет команду bdist_wheel для setuptools. Он создает файл .whl, который можно установить напрямую с помощью команды pip install. Затем мы загрузим тот же файл на pypi.orgarrow-up-right.

  • twine - Пакет twinearrow-up-right обеспечивает безопасное, аутентифицированное и проверенное соединение между вашей системой и PyPiarrow-up-right через HTTPSarrow-up-right.

  • tqdm - Это интеллектуальный индикатор прогресса, используемый twine внутри компании.

3. Настройка вашего проекта

Создайте пакет, скажем, dokr_pkg.

Создайте исполняемый файл внутри пакета, скажем, dokr. Создайте скрипт и без расширений (dokr).

Сделайте свой скрипт исполняемым.

Создайте в своем пакете установочный файл setup.py. Этот файл будет содержать всю информацию о метаданных вашего пакета.

Ниже приводится информация о метаданных:

Метаданные

Описание

name

Имя вашего пакета.

version

Текущая версия вашего пакета в pip.

scripts

Список исполняемых файлов. Рекомендуется оставить их такими же, как имя вашего пакета pip. Здесь мы используем dokr.

author and author_email

Имя и адрес электронной почты автора.

description

Краткое описание пакета.

long_description

Описание пакета.

long_description_content_type

Более подробное описание. Вот это markdown. Мы выбираем README.md для длинного описания.

packages

Используйте для других зависимостей пакета.

classifiers

Содержит все классификаторы вашего проекта.

Добавьте ЛИЦЕНЗИЮ в свой проект, создав файл с именем LICENSE. Образец лицензии доступен здесьarrow-up-right.

4. Компиляция вашего пакета

Зайдите в папку своего пакета и выполните эту команду: python setup.py bdist_wheel. Это создаст такую структуру:

  • build - информация о пакете сборки.

  • dist - Содержит ваш .whl файл. Файл WHL - это пакет, сохраненный в формате Wheel, который является стандартным форматом встроенных пакетов, используемым для дистрибутивов Python. Вы можете напрямую установить файл .whl с помощью pip install some_package.whl в вашей системе

  • project.egg.info - Пакет egg содержит скомпилированный байт-код, информацию о пакете, ссылки зависимостей и фиксирует информацию, используемую командой setup.py test при запуске тестов.

5. Установить на свой локальный компьютер

Если вы хотите протестировать свое приложение на локальном компьютере, вы можете установить файл .whl с помощью pip:

6. Загрузить на pip

  • Создать .pypirc: файл Pypircarrow-up-right хранит информацию репозитория PyPi. Создайте файл в домашнем каталоге

    • для Windows: C:\Users\UserName\.pypirc

    • для *nix: ~/.pypirc

  • И добавьте к нему следующий контент. Замените javatechy своим именем пользователя.

  • Чтобы загрузить файл dist/*.whl на PyPi, используйте Twine:

Эта команда загрузит ваш пакет в PyPi. Этот учебный пакет доступен здесьarrow-up-right.

3. Заключение

Мы узнали, как установить и создать пакет pip и сделать его доступным для всех. Этот пакет можно легко установить на любой компьютер, на котором есть pip, с помощью следующих команд:

Исходный код можно найти на GitHubarrow-up-right, а пакет pip - на PyPiarrow-up-right.

Если вам понравился этот пост, ознакомьтесь со статьей Дипака о Dockerizing Spring Boot Applicationarrow-up-right.

Last updated