web-dev-qa-db-ja.com

pythonアプリケーションのブラウザベースのGUI

コマンドラインpythonアプリケーション用のWeb /ブラウザベースのGUIを作成したい。目標は、このGUIを作成するためにHTML/JSテクノロジーを利用することです。アプリケーション自体として、LinuxとWindowsで実行する必要があり、インターフェースはlocalhostからのみアクセスできます(インターネットに公開されません)。 GUIには5〜10ページが含まれます。

HTML/JSを含む従来のデスクトップGUIは必要ありませんが、一連のHTMLファイルと、それらとアプリケーションの間にある種のコントローラーが必要です。

また、非同期プログラミング(ajaxのような)を利用して、ページ全体を更新せずにGUIでデータをロードおよび印刷できるようにしたいと考えています。私はおそらくそのためにjQueryを使用しますが、他にもいくつかあります。

これをどのように設計することをお勧めしますか?ここではパフォーマンスは重要ではありません。信頼性、移植性、シンプルさを考えています。

私は軽量のpython HTTPサーバー/フレームワーク( CherryPy など)と、後でPythonテンプレートシステム(最初はそれだけで数ページになります)。

編集:
ブラウザ/ WebベースのGUIの代わりではなく、これを構築する方法/アイデアを探しています。

8
ack__

私は現在、ほとんど同じことをしようとしています。 Pythonサーバーがある( SimpleHTTPServer )のように見えるので、Python serverと対話するAngularJS Webアプリケーションを作成しようとしています。

潜在的に、スタンドアロンプ​​ログラムとしてPythonアプリケーションを配布できる cefpython プロジェクトがあります。

5
Eugene

あなたが述べた基準は:

  • 信頼性
  • 携帯性
  • シンプル

その場合は、デスクトップアプリが適しています。 Webサーバーを混在させる必要はありません。それは実際の利益のために問題を複雑にするだけです。

OPの編集(HTMLベースのインターフェースが望ましい)に基づいて、可能なルートはnode-webkitになります。これにより、HTML、Javascriptを使用してWindows、Linux、Macで動作するデスクトップアプリケーションを作成できます。これは、PhoneGapといくらか似たアプローチを取ります(すべてのプラットフォームで同じ埋め込みブラウザーが使用されることを除いて)。 Nodeは、多数のライブラリへのアクセスを提供するJavascriptを強化するために使用されます。また、基盤となるシステムにアクセスして、Pythonベースのコマンドラインプログラムを実行できます。

3
GrandmasterB

Python Webアプリのオプション:

  • Django
  • web.py
  • werkzeug(フラスコあり/なし)
  • ねじれた
  • cherry.py
  • 生wsgi
  • 生のsimplehttpserver

これらのどれでも機能します。アプリの作成方法に関する限り。これらのフレームワークのほとんどには、オンラインチュートリアルがあります。ただ従うだけで、ニーズに合わせて調整してください。

2
tylerl