LoginSignup
13
12

More than 5 years have passed since last update.

パッケージを作成し、PyPIに登録したメモ

Posted at

Pythonでパッケージを作って、PyPIに登録した時の作業メモ
なお、今回はコマンドラインツールを作りました

PyPIに登録することによってpipでインストール出来るようになります

ディレクトリ構成

├── README.md 
├── requirements.txt
├── setup.py
└── src
    ├── __init__.py
    └── hoge.py

ファイル詳細

  • requirements.txt、src/init.py

    touchで作った空ファイルです

  • README.md

    github用

  • src/hoge.py

    実装したパッケージのソースコード
    今回はコマンドラインツールなので、main関数に実行する処理を記述しておきました

  • setup.py

    パッケージを登録する際に必要な情報を記載します

    setup.py
    # -*- encoding:utf-8 -*-
    from setuptools import setup, find_packages
    
    setup(
        name='pass-manager',
        version='1.0.0',
        author='petitviolet',
        author_email='hoge@gmail.com',
        packages=find_packages(),
        install_requires=[],
        description = 'CLI tool',
        long_description = 'Simple CLI tool',
        url = 'https://example.com/',
        license = 'MIT',
        # scripts = ['src/hoge.py'],
        platforms = ['Mac OS X'],
        # platforms = ['POSIX', 'Windows', 'Mac OS X'],
        entry_points={
            'console_scripts': 'hoge = src.hoge:main'
        },
        zip_safe=False,
        classifiers=[
              'Environment :: Console',
              'Intended Audience :: Developers',
              'Operating System :: OS Independent',
              'Programming Language :: Python',
              'Topic :: Utilities'
        ]
    )
    

    classfierslicensehttps://pypi.python.org/pypi?:action=list_classifiersを見て入力すると良いと思います。

登録作業

# setup.pyのチェック
$ python setup.py check
# -> "running check"と出力される
$ python setup.py register
running register
...
We need to know who you are, so please choose either:
1. use your existing login,
2. register as a new user,
3. have the server generate a new password for you (and email it to you), or
4. quit
Your selection [default 1]:

これで2を選択して、usernameやpasswordを登録して下さい
実際にユーザーアカウントが作成されます
なお、passwordはちゃんとした強度がないと怒られてしまいます

python setup.py register sdist bdist bdist_egg upload

これでPyPIにソースとバイナリとeggをアップロードすることが出来ます。

アップロードしたパッケージには http://pypi.python.org/pypi/"PKG-NAME" でアクセス出来るようになります
パッケージの情報(setup.pyに記載した内容)はPyPIのパッケージのページからも編集できるようになっています

13
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
12