Как я могу использовать HTML + Javascript для создания графического интерфейса Python? - PullRequest
20 голосов
/ 27 октября 2010

Вчера я экспериментировал с Appcelerator Titanum и думаю, что это круто, когда дело доходит до Javascript.

Функции Python в Appcelerator Titanum настолько ограничены (например, некоторые модули использовать нельзя).

Мой вопрос: как я могу использовать html & javascript в качестве инструмента графического интерфейса для реального приложения на Python ?

У меня работает Windows 7я думал об использовании webkit для этой цели, но не мог знать, как с ним работать в python.

Я планирую сделать автономный исполняемый файл с использованием py2exe, поскольку я не знаю, всегда ли у пользователей установлен Python и установлены соответствующие модули.

Ответы [ 10 ]

8 голосов
/ 01 ноября 2010

Если вам нужны привязки webkit для Python, посмотрите PyQt, который включает в себя Webkit, а также wxWebkit (http://wxwebkit.wxcommunity.com/), если вы используете wxWidgets. Это позволяет вам встраивать webkit в приложение Qt или Wxwidgets чтобы вам не пришлось заходить в браузер.

Если вы используете это, то вы можете использовать веб-сервер в Python, как уже упоминали другие, или вы можете напрямую управлять элементом управления Webkit (хотя я не уверен, насколько это практично).

Помимо этого, есть также Pajamas Desktop (http://pyjs.org/),, который позволяет использовать пижаму для создания приложения, а затем запустить его.

4 голосов
/ 27 октября 2010

pywebkitgtk может быть тем, что вы ищете.

"HOWTO Создание Python GUI с использованием HTML" http://www.aclevername.com/articles/python-webgui/

http://arstechnica.com/open-source/guides/2009/07/how-to-build-a-desktop-wysiwyg-editor-with-webkit-and-html-5.ars

Но я не уверен, работает ли он в Windows.

PyQt и Webkit будут работать в Windows.

http://www.rkblog.rk.edu.pl/w/p/webkit-pyqt-rendering-web-pages/

3 голосов
/ 09 июля 2011

Здесь - хорошая беседа PyCon на эту тему.

2 голосов
/ 27 октября 2010

Итак, как я могу использовать html & javascript в качестве графического инструмента для реального приложения на Python?

Вы запускаете веб-сервер на своем рабочем столе.Например, это: http://docs.python.org/library/simplehttpserver.html В нескольких строках кода вы можете предоставить полный HTTP-сервер, который будет обслуживать ваш HTML и Javascript для браузера.

Я использую Windows 7 ия думал об использовании webkit для этой цели, но не мог знать, как работать с ним в python. Более того, я хочу использовать py2exe, так как я могу использовать python + webkit для обработки части графического интерфейса?

Трудно разобрать это.Это либо указывает на то, что кофе слишком много, либо на знакомстве с пунктуацией нет.

В случайном порядке я выберу следующие слова как имеющие смысл.

как я могу использовать python + webkit для обработкичасть графического интерфейса?

Вы запускаете веб-сервер на своем рабочем столе.Веб-сервер предоставляет html и javascript-страницы браузеру, который также работает на вашем рабочем столе.

1 голос
/ 11 февраля 2014

PHP Desktop - это проект с открытым исходным кодом, основанный Цареком Томчаком в 2012, чтобы предоставить возможность для разработки собственных приложений с графическим интерфейсом рабочего стола используя веб-технологии, такие как PHP, HTML5, JavaScript и SQLite. рабочий процесс разработки, к которому вы привыкли при создании веб-приложений остается такой же. Шаг превращения существующего веб-сайта в Настольное приложение - это, в основном, вопрос копирования его в «www /». каталог.

PHP Desktop также выпускает Python Desktop и Ruby Desktop. Он позволяет вам создать приложение для Windows, которое либо использует установленный IE для внешнего интерфейса, либо использует экземпляр Chrome (так что определенно поддерживает HTML5), который поставляется вместе с приложением. Он запускает локальный веб-сервер, поддерживает множество баз данных с драйвером PDO, и вы можете размещать представления в HTML и Javascript. Вы можете загружать внешние ресурсы, как и любой другой веб-сайт / веб-приложение, поэтому оно также поддерживает сетевые ресурсы. Приложение поставляется с собственной версией Python, вы можете добавлять библиотеки по своему усмотрению.

Я посмотрел все ответы раньше, поскольку у меня был точно такой же вопрос, как и у вас, но PHP Desktop легко решил его для меня.

https://code.google.com/p/phpdesktop/wiki/EmbeddingOtherScriptingLanguages

1 голос
/ 27 октября 2010

Вы смотрели на htmlayout? http://terrainformatica.com/htmlayout/main.whtm

0 голосов
/ 02 января 2015

Вы можете использовать TideSDK, который поможет вам создавать красивые и уникальные настольные приложения, используя ваши навыки веб-разработки (HTML5 / CSS3 / JavaScript / Python или PHP или Ruby).

Сайт: http://www.tidesdk.org

Использование Python в TideSDK: http://tidesdk.multipart.net/docs/user-dev/generated/#!/guide/using_python

Надеюсь, это поможет! :)

0 голосов
/ 14 июля 2014

Взгляните на pySide

Я предлагаю использовать QtWebKit

И вы можете использовать PyInstaller , если хотите скрыть исходный код.

0 голосов
/ 21 июня 2013

Если вы думаете о реальных настольных приложениях, которые являются многопоточными и / или используют несколько системных компонентов - забудьте о JavaScript. Для этого требуется очень хороший SDK (например, PyQt4), а не базовая оболочка, такая как Appcelerator Titanium. Обратите внимание, что разработка таких приложений занимает много времени.

Второй вариант - удалить привязку к рабочему столу и создать веб-приложение с расширенным пользовательским интерфейсом внешнего интерфейса, созданным с помощью одной из фреймворков и друзей JavaScript (Ember, Angular ... вплоть до таких вещей, как dhtmlx и подобные виджеты). Они не могут использовать системные компоненты (например, доступ к некоторому оборудованию), но могут предоставлять хорошие услуги.

0 голосов
/ 31 октября 2010

Я предполагаю, что вы мобилизуете веб-приложение для кроссплатформенного доступа.

Если это так, рассматривали ли вы абстрагирование кроссплатформенного доступа на уровне представления веб-приложений?

Appcelerator / Webkit не обеспечивает истинного собственного внешнего вида на мобильных устройствах, но в этом может помочь новая технология.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...