Werkzeug, VirtualEnv e web app con Python
Nonostante il nome astruso, Werkzeug (che in tedesco vuol dire semplicemente strumento) è una potente e leggera Web Server Gateway Interface(WSGI) per Python, supporta una serie di funzionalità e permette rapidamente di fornire un’interfaccia web per le applicazioni Python.
La configurazione è praticamente identica sia per Linux che per Windows, sul sito http://werkzeug.pocoo.org/ ci sono le istruzioni per entrambe le configurazioni.
Vediamo come configurarla sotto Windows:
1) Partiamo dal presupposto che abbiamo gia installato PIP e Python(qualsiasi versione)
Per comodità installiamo la libreria in ambiente virtuale Python, questo di fatto crea in un folder separato le funzionalità di base di python, con librerie e impostazioni specifiche solo per quell’ambiente.Comodo sia per testare nuove configurazioni, sia per lavorare con differenti versioni di Python.
2) Eseguiamo: pip install virtualenv
3) Creiamo una cartella, dove andremo ad eseguire: virtualenv env
4) All’interno della stessa cartella attiviamo l’ambiente con: env\scripts\activate
e vediamo:
(env) C:\Python27\Webapp\env>
5) Dopodchè installiamo Werkzeug: pip install Werkzeug
6) A questo punto possiamo testare lo strumento con una semplice app che scriveremo in un file di testo, nel nostro caso
la chiamiamo webapp.py:
from werkzeug.wrappers import Request, Response @Request.application def application(request): return Response('Hello World!') if __name__ == '__main__': from werkzeug.serving import run_simple run_simple('localhost', 4000, application)
7) A questo punto possiamo eseguirla con: python webapp.py
ricevendo come output:
(env) C:\Python27\Webapp\env>python webapp.py * Running on http://localhost:4000/ (Press CTRL+C to quit) 127.0.0.1 - - [17/Jan/2019 15:34:50] "GET / HTTP/1.1" 200 - 127.0.0.1 - - [17/Jan/2019 15:34:51] "GET /favicon.ico HTTP/1.1" 200 -
8) Aprendo ora il browser su localhost:4000 accediamo alla nostra app di prova.