Repolode
chriskiehl

chriskiehl/Gooey

argparseベースのコマンドラインプログラムを、デコレーターひとつでデスクトップGUIに変換するPythonライブラリ。

スター
21,896
フォーク
1,047
未解決の Issue
172
最終コミット
一昨日

これは何?

Gooeyは、argparseを使うPythonコンソールプログラムをラップし、引数の宣言からグラフィカルインターフェースを生成します。パーサーを構築する関数に@Gooeyデコレーターを追加するだけで、入力欄、チェックボックス、ドロップダウンなどを備えたウィンドウを表示できます。スクリプト自体は従来どおり動作します。

デフォルトでは、Gooeyが各argparseアクションに適したウィジェットを割り当てます。ArgumentParserの代わりにGooeyParserを使うと、ファイルやディレクトリの選択、日付・時刻の選択、スライダー、パスワード入力欄、リストボックスなどを明示的に選べます。レイアウト、ウィンドウサイズ、設定画面(基本または詳細)、メニュー、プログラム出力への正規表現マッチをもとにしたプログレスバーも、デコレーターの引数で設定できます。

GooeyはPython 3に対応しています。READMEによると、Python 2のユーザーは古いバージョンに固定する必要があります。多言語の翻訳が付属しており、PyInstallerを使って実行ファイルにパッケージ化できます。

主な機能

  • 01@Gooeyデコレーターひとつで、argparseプログラムにGUIを追加します。
  • 02argparseアクションにウィジェットを自動で割り当てます。ウィジェットを明示的に選ぶにはGooeyParserを使います。
  • 03ファイル、ディレクトリ、日付、時刻、色、スライダーのウィジェットを提供します。
  • 04プログラム出力への正規表現マッチをもとにプログレスバーを表示でき、残り時間も任意で表示できます。
  • 05メニューバーから、概要、メッセージ、リンク、HTMLの各ダイアログを表示できます。
  • 06JSON言語ファイルによる国際化に対応しています。

ユースケース

  • プログラマーではない同僚に、社内Pythonスクリプトをクリック操作で使える画面を提供する。
  • データ処理やファイル変換のユーティリティをラップし、ユーザーが画面上で入力ファイルを選べるようにする。
  • Python CLIツールを、フォーム形式のインターフェースを備えたWindows向けまたはデスクトップ向けのスタンドアロン実行ファイルとしてパッケージ化する。

クイックスタート

  1. 1

    pip を使って PyPI から Gooey をインストールします

    pip install Gooey
  2. 2

    argparse のメイン関数に @Gooey デコレーターを適用します

使う前に知っておきたいこと

  • Python 2 はサポート対象外です。Python 2 ユーザーは古いリリースを指定し、wxPython を手動でインストールする必要があります。
  • Gooey は wxPython に依存していますが、Python 2 では pip によるインストール時に wxPython をインストールできません。

収録されている特集

トピック

#python#gui#argparse#cli#desktop-app#wxpython

よくある質問

Gooey とは?
argparseベースのコマンドラインプログラムを、デコレーターひとつでデスクトップGUIに変換するPythonライブラリ。 Gooeyは、argparseを使うPythonコンソールプログラムをラップし、引数の宣言からグラフィカルインターフェースを生成します。パーサーを構築する関数に@Gooeyデコレーターを追加するだけで、入力欄、チェックボックス、ドロップダウンなどを備えたウィンドウを表示できます。スクリプト自体は従来どおり動作します。
Gooey は無料で使えますか?ライセンスは?
Gooey は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
Gooey は今もメンテナンスされていますか?
活発にメンテナンス中。Gooey の最終コミットは 2026年11月5日 です。
Gooey は何に使えますか?
プログラマーではない同僚に、社内Pythonスクリプトをクリック操作で使える画面を提供する。 データ処理やファイル変換のユーティリティをラップし、ユーザーが画面上で入力ファイルを選べるようにする。 Python CLIツールを、フォーム形式のインターフェースを備えたWindows向けまたはデスクトップ向けのスタンドアロン実行ファイルとしてパッケージ化する。
Gooey のインストール方法は?
pip を使って PyPI から Gooey をインストールします: pip install Gooey argparse のメイン関数に @Gooey デコレーターを適用します
Gooey はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/chriskiehl/Gooey

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト