![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
kulibinka |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 191 Регистрация: 20.11.2006 Репутация: 2 Всего: 4 |
Есть скрипт на питоне. К нему нужно приделать интерфейс.
Такой вопрос: можно ли использовать для этой цели обычный хтмл? (== как при клике на ссылке запустить нужную ф-ю этого скрипта). Это сообщение отредактировал(а) kulibinka - 10.6.2007, 15:40 |
|||
|
||||
cherep |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 74 Регистрация: 11.1.2006 Где: Москва Репутация: 1 Всего: 4 |
Очевидно, как. Использовать серверную часть, будь-то CGI, WSGI, какой-нибудь фреймворк (Django, TG, ...). Именно для того оно и придумано, по большому счету.
|
|||
|
||||
kulibinka |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 191 Регистрация: 20.11.2006 Репутация: 2 Всего: 4 |
Да в том то и дело что я без серверной части хочу обойтись. Т.е. просто есть скрипт, и есть страничка с которой я смогу сделать запуск этого скрипта...
Уверен что есть простой способ на html-страницы кликом выполнить запуск любой программы - это первый шаг к решению... |
|||
|
||||
pythonwin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2529 Регистрация: 18.4.2006 Где: за компом Репутация: 14 Всего: 36 |
||||
|
||||
kulibinka |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 191 Регистрация: 20.11.2006 Репутация: 2 Всего: 4 |
Ну, для того чтобы этот способ увидеть я и создал этот пост
![]() (хотя думаю, ответ лежит не в питонной, а в какой-то явоскриптовой области) |
|||
|
||||
pythonwin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2529 Регистрация: 18.4.2006 Где: за компом Репутация: 14 Всего: 36 |
вроде серверная часть js позволяет это делать, но это тоже будет серверная часть ![]() на клиентской части js это не сделать... думаю лучше постать что-то питоновское на сервер и не изобретать велосипед ![]() |
|||
|
||||
kulibinka |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 191 Регистрация: 20.11.2006 Репутация: 2 Всего: 4 |
Вот тут http://forum.vingrad.ru/forum/topic-77129/...y1164376/0.html нашел схожую тему - говорят что все можно...
Жду ответа на вопрос "как" ![]() |
|||
|
||||
setq |
|
|||
Unregistered |
Модератор: Если хотите, перенесу тему в Javascript.
|
|||
|
||||
kulibinka |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 191 Регистрация: 20.11.2006 Репутация: 2 Всего: 4 |
||||
|
||||
Ulysses4j |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 304 Регистрация: 6.6.2007 Где: Ростов-на-Дону Репутация: 3 Всего: 10 |
HTML и Javascript ничего запускать не умеют. Запускать программы на выполнение могут ActiveX объекты, которые работают только в IE, и Java-апплеты, которые кроссбраузерны. Но и это не является их профилем, чтобы добиться такой фунциональности нужно ими весьма искуссно владеть. А вы пытаетесь изобрести велосипед под названием web-сервер. То что вы описали - это ровно его функциональность.
-------------------- Communication is critical to the job of a programmer. C. Jazdzewski. Fatherly Advice To New Programmers |
|||
|
||||
astoon |
|
||||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 27.11.2006 Где: Екатеринбург Репутация: 1 Всего: 1 |
Если не использовать существующие вэб-серверы, тогда нужно писать свой
![]() То есть добавить к Вашему скрипту небольшой модуль с циклом: слушать сокет - обработать запрос - ответить/или закончить. На обработку запроса - пара-тройка функций, разбирающих запросы, скажем, в кортеж из двух словарей: один - параметры GET, второй - остальные из заголовка. Что-то примерно так:
Запускаем приложение, вызывая код такого типа:
Самая лабуда здесь - четко соблюдать открытие - закрытие сокета, а то будет "сокет занят" при повторном запуске программы. Если не ошибаюсь, при удалениии всех ссылок на сокет, Питон-интерпретатор должен его закрыть, однако в реальности он не успевает это сделать. Поправьте, если где не прав. ЗЫ. А вообще есть готовые мини-серверы на Питоне, на форуме где-то были ссылки. |
||||
|
|||||
Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 10 Всего: 173 |
Я, кажется, понял. Вам нужен встроенный HTML-рендерер, что-то вроде HTMLayout. К сожалению, насколько мне известно, это единственная пригодная для построения GUI библиотека такого рода, и обёрток для Питона к ней не наблюдается.
Конечно есть. Модули BaseHTTPServer, SimpleHTTPServer, wsgiref.simple_server в стандартной поставке. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
Ulysses4j |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 304 Регистрация: 6.6.2007 Где: Ростов-на-Дону Репутация: 3 Всего: 10 |
Ну да, вместо эмуляции веб-сервера предлагается воспользоваться эмуляцией браузера. Интересно, конечно... Ох и много бы я отдал, чтобы посмотреть на "серверную часть" JS... -------------------- Communication is critical to the job of a programmer. C. Jazdzewski. Fatherly Advice To New Programmers |
|||
|
||||
pythonwin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2529 Регистрация: 18.4.2006 Где: за компом Репутация: 14 Всего: 36 |
||||
|
||||
dvska |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 182 Регистрация: 30.1.2006 Репутация: 6 Всего: 9 |
Да-да, как уже описали astoon и Void, никакого Javascript'а не нужно, а нужно запущать прогу из-под простейшего web-сервера (web.py, wsgiref.simple_server, quixote, cherrypy ....). Олег Бройтман даже, помнится, в еxe-шники это всё заворачивал с помощью py2exe..
--------------------
|
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Python: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |