Настольное приложение Python с браузером в качестве интерфейса?
Я хочу создать приложение, которое работает на компьютере пользователей, автономное приложение, с установкой и что-нет, но я хочу, чтобы интерфейс был браузером, либо внутренним и отображаемым как окно ОС, либо внешним, доступным с помощью браузера (т. е. некоторый http-сервер).
причина в том, что я немного знаю о Python, но я думаю, что могу управлять, пока у меня есть некоторые основные корни, которые я могу использовать и манипулировать, и это будет HTML, CSS и Яваскрипт.
Я еще не нашел хороший инструмент GUI, который я могу использовать, и всегда отказываюсь от идеи после попытки возиться и в конечном итоге ничего не получая.
4 ответов
Python предлагает две вещи, которые должны представлять ваш интерес:
- веб-сервер в стандартной библиотеке
- стандартный интерфейс для веб-приложений, называемый WSGI
таким образом, относительно легко добавить веб-интерфейс к вашему приложению. Например, в Mercurial (система управления версиями) у вас есть команда hg serve
, который запускает веб-сервер.
чтобы увидеть python, запускающий веб-сервер и приложение WSGI, просто do:
python -m 'wsgiref.simple_server'
вы можете посмотреть исходный код wsgiref или некоторые WSGI учебник, чтобы сделать простое приложение.
после этого вы можете использовать веб-фреймворк (для templating & co), но это другой вопрос...
можно использовать пижама. Это порт Google Web Toolkit для Python, что в основном означает, что вы пишете на Python, и он компилируется в HTML и JS.
есть много отличных инструментов GUI для того, как вы хотите сделать свой GUI-HTML, CSS и Javascript. Если вы ничего не знаете, задайте отдельный вопрос с правильными тегами.
сторона Python в таком расположении не должна иметь собственного GUI, а просто запускать подкласс HTTP-сервера стандартной библиотеки Python, просто обслуживая HTML, CSS и JS-файлы и данные через JSON на других URL-адресах, которые JS может достичь с помощью методов Ajax, по существу реализуя хранение и бизнес-логи - так что далеко не очевидно, какой "инструмент GUI" вы могли бы хочу за это?!
просто разработайте сторону Python самостоятельно (например, с IDLE, Wingware, SPE или что угодно) и HTML / CSS / Javascript отдельно, со своим собственным "GUI tool". Все, что Python будет делать с этими файлами, статически служить их, в конце концов.
вы могли бы подумать об использовании некоторых шаблонов Python, таких как Mojo &c, но мой рекомендация состоит в том, чтобы избежать этого: скорее, идите с" тонкой архитектурой сервера " полностью, сделайте сторону Python спокойным сервером бизнес-логики и слоев хранения и сделайте все GUI работает в браузере вместо этого.
вы прибегаете к веб-браузеру только потому, что у вас были трудности с инструментами виджетов Python,такими как Tkinter, wxpython и pyqt?
вы пробовали Qt Designer? Это графический дизайнер GUI, что делает его очень быстрым и легким для разработки больших перспективных GUI. Он устанавливается автоматически с PyQt.