Как мне создать веб-интерфейс для простого скрипта Python?

Я использую const вместо var в моих сценариях Механика, но это - потому что они будут работать только на Firefox...
Соглашение о присвоении имен может быть действительно способом пойти, также (я делаю обоих!).

28
задан Jonathan 10 December 2010 в 19:20
поделиться

4 ответа

Если вы создаете неинтерактивные страницы, вы можете легко настроить любой современный веб-сервер для выполнения скрипта Python в качестве CGI. Вместо того, чтобы загружать статический файл, ваш веб-сервер вернет вывод вашего скрипта Python.

Это не очень сложно, но если вы просто возвращаете выходные данные без необходимости отправки даты в браузере, это самый простой способ (масштабирование под нагрузкой - это отдельная история).

Вам даже не нужен модуль "cgi" из python, если вы не получаете никаких данных из браузера. Что-нибудь более сложное, чем это, и вы должны использовать веб-фреймворк.

Примеры и другие методы

  • Простой пример : самая сложная часть - конфигурация веб-сервера
  • mod_python : Сокращение накладных расходов CGI (в противном случае apache запускает интерпретатор python для каждого попадания)
  • модуль python cgi : отправка данных в скрипт Python из браузера.

Сортировка

Сортировка на стороне JavaScript : я использовал эту библиотеку javascript для добавления сортируемых таблиц. Это самый простой способ добавить сортировку, не требуя дополнительной работы или другого HTTP GET.

Инструкции:
Загрузить этот файл
Добавить в HTML
Добавить class = "sortable" в любую таблицу, которую вы хотите сделать сортируемой
Нажмите на заголовки, чтобы отсортировать

13
ответ дан 28 November 2019 в 03:04
поделиться

Вы можете рассмотреть Торнадо , если у Джанго слишком много накладных расходов. Я использовал оба и согласен, что если у вас есть что-то простое / маленькое, и вы еще не знаете Django, это значительно увеличит ваше время на производство. С другой стороны, вы можете «заполучить» торнадо за пару часов и сделать что-то относительно простое за день или два без предварительного опыта работы с ним. По крайней мере, это был мой опыт с этим.

Обратите внимание, что Торнадо все еще является компромиссом: вы получаете много простоты в обмен на огромный рог изобилия функций и ярлыков, которые вы получаете с Django.

PS - помимо того, что Tornado является «микро-фреймворком», он также является собственным веб-сервером, так что нет никаких проблем с wsgi / mod-cgi / fcgi .... просто напишите ваши обработчики запросов и запустите Это. Обязательно посмотрите демоверсии, включенные в дистрибутив.

8
ответ дан 28 November 2019 в 03:04
поделиться

Django - это большая веб-структура, предназначенная для того, чтобы включать в себя множество вещей, потому что они часто вам нужны, хотя иногда это не так.

Посмотрите на пирамиду, ранее известную как BFG. Это намного меньше. http://pypi.python.org/pypi/pyramid/1.0a1

Другие микрофреймы, с которыми можно ознакомиться здесь: http://wiki.python.org/moin / WebFrameworks

С другой стороны, в этом случае это, вероятно, также излишне. Похоже, вы можете запускать скрипт раз в десять минут, писать статический HTML-файл и просто использовать Apache.

3
ответ дан 28 November 2019 в 03:04
поделиться

Если вы не хотите писать свой собственный инструмент, есть довольно продвинутый инструмент для выполнения ваших сценариев: http://rundeck.org/ Его довольно просто запустить и его можно настроить для сложных сценарии также. Я считаю, что для требования пользовательского представления (с сортируемыми результатами) вы можете реализовать простой плагин для перевода вывода скрипта в элементы html.

Кроме того, для простых настроек я мог бы порекомендовать свой собственный инструмент: https://github.com/bugy/script-server . Он не имеет тонны функций, но очень прост для конечных пользователей и поддерживает интерактивное выполнение.

2
ответ дан 28 November 2019 в 03:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: