Panel informacyjno-kontrolny (#1) – instalacja Flask’a

Panel informacyjno-kontrolny (#1) - instalacja Flask'a

Poziom trudności
1.5/5

Ten artykuł rozpoczyna serię, w które zostanie utworzony niewielki (przynajmniej we wstępnej fazie), ale myślę, że w wielu aspektach przydatny program. Będzie on panelem informacyjnym przedstawiającym wyniki testów, stan/status urządzenia, którym będziemy testować (w tym przypadku będzie to Raspberry pi), a także będzie miał możliwość puszczania testów. A wszystko to będzie umożliwiało zdalne kontrolowanie testów i ich wyników.

Ten tutorial będzie oparty o skonfigurowany mikrokomputer Raspberry pi i Python 3.5. Jeżeli jeszcze nie masz przygotowanego sprzętu polecam zapoznać się z wcześniejszymi artykułami o Raspberry pi:

Web framework

Do zaimplementowania panelu wykorzystamy mikro web framework’u Flask. Jest to lekki framework aplikacji web’owych. Został zaprojektowany tak, aby rozpoczęcie pracy było szybkie i łatwe. Ze względu na małą zasobożerność świetnie nadaje się do użycia w mikrokomputerach. Według mnie ogromnym plusem jest to, że Flask jest napisany w Python’ie, dzięki czemu dużą część aplikacji można wykonać właśnie w tym języku. Nie stanowi on też problemu dla początkujących. Jak zresztą zaraz pokażę, wygenerowanie lokalnie strony  z napisem „Hello World”, nie będzie niczym trudnym.

Flask został zaprojektowany i opracowany przez Armina Ronachera jako żart prima aprilisowy. Był to typowo nerdowski żart, gdyż był to wtedy framework w jednym pliku. Pomimo tego, że powstał jako żart, framework Flask stał się niezwykle popularny jako alternatywa dla Django.

Instalacja

Do instalacji Flask’a wykorzystamy menadżer paczek pip. Jeżeli nie masz skonfigurowanego aliasu pip pod Python 3, użyj pip3. Ze względu na to, że będziemy chcieli użyć w przyszłości Flask’a jako zewnętrzny serwer www, instalacji dokonamy jako użytkownik root, przy użyciu komendy sudo:

sudo pip install flask

Hello World

Gdy proces instalacji dobiegnie do końca, czas utworzyć najbardziej oklepaną stronę/program/kod świata – „Hello World”. Utwórz folder w dowolnym miejscu, a w nim plik app.py. W utworzonym pliku umieść poniższy kod:

  1. from flask import Flask
  2. app = Flask(__name__)
  3. @app.route("/")
  4. def hello():
  5. return "Hello World!"
  6. if (__name__ == "__main__"):
  7. app.run(host='0.0.0.0', port=5000)

Na początku importuje on bibliotekę Flask i tworzy jej obiekt. W linijce piąte definiujemy, dla jakiej ścieżki zasobów będzie się odnosić poniżej uruchamiana metoda, zwracającą kod strony internetowej (w powyższym przypadku zwraca jedynie napis „Hello World”). Tak przygotowaną stronę uruchamiamy za pomocą obiektu app, metodą run. Powyżej podałem host, gdzie 0.0.0.0 oznacza host lokalny i port 5000, który jest domyślnym portem dla Flask’a. Po zapisaniu pliku czas go uruchomić:

sudo python app.py

W oknie przeglądarki wpisz http://{adres_twojego_raspbbery}:5000 a twoim oczom ukazać powinien się poniższy efekt:

Panel informacyjno kontrolny (#1)   instalacja Flaska image

Gratulacje, wszedłeś właśnie w posiadanie lokalnego serwera web. Tak jak wcześniej wspominałem Flask posiada bardzo niski próg wejścia, ale jak zobaczycie w przyszłych częściach tej serii, daje też wiele możliwości.

Dodaj komentarz