Aplicación Web de Flask con Python (tutorial para
principiantes)
Publicado por:
https://pythonspot.com/flask-web-app-with-python/
Aplicación de Python creada con Flask.
En este tutorial, aprenderá cómo crear una aplicación web con
Python. Usaremos un micro-marco llamado Flask.
¿Por qué Frasco?
fácil de usar.
construido en el servidor de desarrollo y depurador
soporte de pruebas unitarias integradas
Envío de solicitud RESTful
utiliza la plantilla de Jinja2
soporte para cookies seguras (sesiones del lado del cliente)
100% compatible con WSGI 1.0
Basado en Unicode
ampliamente documentado
Curso relacionado:
Python Flask: Crea aplicaciones web con Python
Instalación del matraz
Instale el Frasco usando el siguiente comando:
$ pip instalar Flask
Crea un archivo llamado hello.py
de matraz de importación Flask
aplicación = Frasco ( __name__ )
@ aplicación. ruta ( "/" )
def hello ( ) :
return "Hello World!"
si __name__ == "__main__" :
la aplicación correr ( )
Finalmente ejecuta la aplicación web usando este comando:
$ python hola. py
* Se ejecuta en http: // localhost: 5000 /
Abra http: // localhost: 5000 / en su navegador web, y debería aparecer el
mensaje “¡Hola mundo!”.
Creación de rutas URL
El enrutamiento de URL hace que las URL en su aplicación web sean fáciles de
recordar. Ahora crearemos algunas rutas de URL:
/Hola
/ miembros /
/nombre de los miembros/
Copia el código de abajo y guárdalo como app.py
de matraz de importación Flask
aplicación = Frasco ( __name__ )
@ aplicación. ruta ( "/" )
def index ( ) :
return "Index!"
@ aplicación. ruta ( "/ hello" )
def hello ( ) :
return "Hello World!"
@ aplicación. ruta ( "/ miembros" )
def miembros ( ) :
devolver "Miembros"
@ aplicación. ruta ( "/ members / <string: name> /" )
def getMember ( name ) :
return name < / string : name >
si __name__ == "__main__" :
la aplicación correr ( )
Reinicie la aplicación usando:
$ python hola. py
* Se ejecuta en http: // localhost: 5000 /
Prueba las URL en tu navegador:
http://127.0.0.1:5000/
http://127.0.0.1:5000/hello
http://127.0.0.1:5000/members
http://127.0.0.1:5000/members/Jordan/
python-flask-webapp
Páginas de Frasco de Estilo
Separaremos el código y la interfaz de usuario utilizando una técnica llamada
Plantillas. Hacemos el directorio llamado / templates / y creamos la plantilla:
< h1 > Hola { { nombre } } < / h1 >
La aplicación Python Flask con una nueva ruta URL. Hemos cambiado el puerto
predeterminado a 80, el puerto HTTP predeterminado:
desde el matraz de importación Matraz , flash , redireccionar , render_template , solicitu
sesión , abortar
aplicación = Frasco ( __name__ )
@ aplicación. ruta ( "/" )
def index ( ) :
regresa "Flask App!"
@ aplicación. ruta ( "/ hello / <string: name> /" )
def hello ( name ) :
return render_template (
'test.html' , name = name ) < / string : name >
si __name__ == "__main__" :
la aplicación ejecutar ( host = '0.0.0.0' , puerto = 80 )
A continuación, puede abrir: http://127.0.0.1/hello/Jackson/
Cómo diseñar la plantilla
¿Quieres una plantilla con mejor aspecto? Modificamos el archivo:
{ % extiende "layout.html" % }
{ % block body% }
< div class = "block1" >
< h1 > Hola { { nombre } } ! < / h1 >
< h2 > Aquí hay una cita interesante para ti: < / h2 >
"Los límites de mi lenguaje son los límites de mi mente. Todo lo que sé es para lo que ten
palabras".
< img src = "http://www.naturalprogramming.com/images/smilingpython.gif" >
< / div >
{ % endblock% }
Luego creamos layout.html que define el aspecto de la página. (Es posible que
desee dividir la hoja de estilo y el archivo layout.html). Copia esto como
layout.html
< título > sitio web < / título >
< Estilo >
@ import url ( . Http: // fuentes googleapis . Com / css familia? = Amatic + SC: 700 )
; < / p >
< p > cuerpo { < br / >
text-align: center ; < br / >
} < br / >
h1 { < br / >
fuente-familia: 'SC Amatic' , cursiva ; < br / >
font-weight: normal ; <br / >
Color: # 8ac640; <br />
font-size: 2.5em ; < br / >
} < / p >
< / estilo > { % cuerpo de bloque% } { % endblock% }
Reinicie la aplicación y abra la url. http://127.0.0.1/hello/Jackson/
Puede elegir cualquier nombre que no sea Jackson.
frasco de aplicación web de pitón
Pasando variables
Permite mostrar citas aleatorias en lugar de siempre la misma cita. Tendremos
que pasar tanto la variable de nombre como la variable de cotización . Para
pasar múltiples variables a la función, simplemente hacemos esto:
return render_template (
'test.html' , ** locals ( ) )
Nuestra nueva plantilla test.html se verá así:
{ % extiende "layout.html" % }
{ % block body% }
< div class = "block1" >
< h1 > Hola { { nombre } } ! < / h1 >
< h2 > Aquí hay una cita interesante para ti: < / h2 >
{ { quote } }
< img src =
"http://www.naturalprogramming.com/images/smilingpython.gif" >
< / div >
{ % endblock% }
Tendremos que elegir una cita al azar. Para ello, utilizamos este código:
quotes = [ "'Si la gente no cree que las matemáticas sean simples, es solo porque no
Louis von Neumann " ,
" 'La informática no tiene más que ver con las computadoras que la astronomía con los tele
'' Para entender la recursión, primero debe entender la recursión ... '- Desconocido" ,
' 'You mira las cosas que son y pregunta, ¿por qué? Sueño con cosas que nunca fueron y pre
" 'Las matemáticas son la llave y la puerta a las ciencias'. - Galileo Galilei " ,
" 'No todos entenderán tu viaje. Eso está bien. No es su viaje para darle sentido. Es tu
randomNumber = randint ( 0 , len ( comillas ) - 1 )
quote = comillas [ randomNumber ]
Lo primero que ves es que hemos definido una matriz de citas múltiples. Se
puede acceder a estos como cita [0], cita [1], cita [2] y así sucesivamente. La
función randint () devuelve un número aleatorio entre 0 y el número total de
comillas, se resta una porque comenzamos a contar desde cero. Finalmente
establecemos la variable de cotización a la cotización que la computadora ha
elegido. Copia el siguiente código a app.py:
del frasco de importación Frasco , Flash , redirigir , render_template , petición , sesión
a partir aleatoria importación randint
aplicación = Frasco ( __name__ )
@ aplicación. ruta ( "/" )
def index ( ) :
regresa "Flask App!"
#@app.route ("/ hello / <string: name>")
@ app. route ( "/ hello / <string: name> /" )
def hello ( name ) :
# return name
quotes = [ "'Si la gente no cree que las matemáticas sean simples, es solo porque no se
Louis von Neumann " ,
" 'La informática no tiene más que ver con las computadoras que la astronomía con los tele
'' Para entender la recursión, primero debe entender la recursión ... '- Desconocido" ,
"'Miras las cosas que son y preguntas, ¿por qué? Sueño con cosas que nunca existieron y pr
" 'Las matemáticas son la llave y la puerta a las ciencias'. - Galileo Galilei " ,
" 'No todos entenderán tu viaje. Eso está bien. No es su viaje para darle sentido. Es tuyo
randomNumber = randint ( 0 , len ( comillas ) - 1 )
quote = quotes [ randomNumber ] < / string : name > < / string : name >
return render_template (
'test.html' , ** locals ( ) )
si __name__ == "__main__" :
la aplicación ejecutar ( host = '0.0.0.0' , puerto = 80 )
Cuando reinicie la aplicación, devolverá una de estas citas al azar.
webap matraz de pitón