Python script を pip でインストール可能にする
概要
自作した Python モジュールをコマンドラインから直接実行できるコマンドとしてインストールする手順をここに共有します。
実現するための手段として
setup.py
にそのための記述を加えることで、モジュールのインストール後にコマンドとして使用できるようになります。
サンプル
サンプルプログラム を用意しました。
実際に動作するスクリプトとしてご参考ください。
事前の準備や条件など
- この記事では Python 3.6 を使用しています。
- コマンドラインから実行できる Python モジュール自体は既に出来上がっているものとします。
Python モジュールをコマンドとしてインストール
setup.pyについて
setup.py
の 関数 setup の中に entry_points
を加えることで、そのモジュールをコマンドとしてインストールできます。
entry_points={
'console_scripts': ['コマンド名=モジュール名:実行する関数名']}
(サンプルプログラム抜粋)
setup(
(省略)
# lt コマンドはここで設定.
entry_points={
'console_scripts': ['lt=command.local_time:exec']})
この例では command モジュール
内の local_time.py
にある関数 exec
とコマンド lt
を紐付けています。
インストール
通常のモジュールと同様、 pip install
によりインストールします。
サンプルプログラムをインストールする場合は、サンプルプログラムがあるディレクトリ上で
pip install .
を実行してください。
実行
console_scripts で指定したコマンドがコマンドラインから直接実行できるようになります。
サンプルの実行例
$ lt
Tokyo 2018-06-26 13:23:17 +09:00
London 2018-06-26 05:23:17 +01:00
New_York 2018-06-26 00:23:17 -04:00
アンインストール
アンインストールも通常のモジュールと同様に行うことができます。
$ pip uninstall モジュール名
結果として
自作 Python モジュールをコマンドとしてコマンドラインから直接実行できるようになりました。
## 参考