Как создать веб-сайт, который действует как GUI для сценария python - PullRequest
0 голосов
/ 06 мая 2020

Мы (моя команда и я) разрабатываем прототип датчика, который использует малину для предварительной обработки показаний датчика. у нас есть рабочий python скрипт и простой GUI с использованием GUIzero для проверки всего, но для этого нужен экран, который должен быть подключен, а это невозможно после завершения настройки и развертывания, например, в поле.

Теперь у нас есть малина, действующая как точка доступа Wi-Fi, и после подключения к локальной сети мы можем получить доступ к RBPi с помощью VN C -viewer и взаимодействовать с простым (guizero -) GUI. Это нормально для продолжения тестирования и разработки. Но как только мы раздадим датчик некоторым тестовым пользователям, решение VN C не будет оптимальным, так как оно позволяет слишком много шпионить за RBPi.

Чтобы решить эту проблему, мы думали, что Хорошим решением было бы как-то связать наш python скрипт с веб-страницей, размещенной на RBPi. Затем пользователь может подойти к датчику, подключиться к локальной беспроводной сети, ввести IP-адрес в браузере, и загружаемая страница позволит запускать / останавливать датчик, загружать измеренные данные, управлять архивными данными, ...

Погуглите во многих направлениях (Django, flask, ...), и я слишком новичок, чтобы выбрать путь, по которому следует (и понять (не) преимущества всех этих фреймворков / библиотек / ...) Может ли кто-нибудь указать мне правильное направление? (мы знаем больше python, чем html или PHP или ..., поэтому, если решение может быть дружественным в этом смысле, это плюс)

1 Ответ

0 голосов
/ 06 мая 2020

Если вы знакомы с Python, я бы посоветовал вам установить приложение Django на вашем RasPi (их руководство для начинающих охватывает все, что вам нужно, и вся структура очень хорошо документирована) . Оттуда вы могли go двумя способами:

  • Либо создать единое представление (в основном функция, которая вызывается при вызове определенного URL-адреса), которое отображает некоторые HTML с кнопками, к которым вы можете подключиться. какой-то Python код в вашей системе
  • Или вы можете создать одно представление для каждой функции (например, / api / start_sensor, / api / download_data) и подключить эти вызовы API к веб-просмотру.

Последний вариант также позволяет программно управлять датчиком через сеть.

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