Python
PyPI
pip
python3
python2.7

PyPIにパッケージを登録する方法(2017/9時点)

まずはじめに

日本語の記事でPyPIにパッケージを登録する方法が簡単にググっても古い手法が多く、なかなかuploadができなかったので、改めてguideを読んで手順をおこしてみました。

https://packaging.python.org/guides/using-testpypi/

この記事は基本的にパッケージのupload時の流れを書きます。
(setup.pyの書き方等は取り扱いません。)

テストでパッケージをupload

  • 事前にwheel, twineを落としておく
    • pip install wheel twine
  • https://test.pypi.org/ にアクセス
  • 登録して、username, passwordを控える
  • 自分の作ったpackageがある(setup.pyがある)ディレクトリのもとで下記を実行
    • python setup.py sdist
    • distディレクトリができ、upload用の圧縮ファイルができるはず
  • .pypircを作って置く
.pypirc
[testpypi]
username: <username>
password: <password>
  • twineを使う
    • twine upload --repository-url https://test.pypi.org/legacy/ dist/*
  • test.pypi.orgのマイページにアップロードしたライブラリが表示される

本番公開する場合

手順はテストのときとほぼ一緒であるがテストの時との手順で違うところをあげておきます。

  • 本番ではhttps://pypi.python.org/pypi に公開するので、事前に←のサイトで登録、username, passwordを控えておく
  • pypircを下記のように書き換えて置く
.pypirc
[pypi]
username: <username>
password: <password>
  • twineを使うタイミングでは、--repository は使わない、下記コマンドに従えばOK
    • twine upload dist/*